【发布时间】:2019-07-29 05:39:57
【问题描述】:
我有一个数据集,如下所示:
{0: {"address": 0,
"ctag": "TOP",
"deps": defaultdict(<class "list">, {"ROOT": [6, 51]}),
"feats": "",
"head": "",
"lemma": "",
"rel": "",
"tag": "TOP",
"word": ""},
1: {"address": 1,
"ctag": "Ne",
"deps": defaultdict(<class "list">, {"NPOSTMOD": [2]}),
"feats": "_",
"head": 6,
"lemma": "اشرف",
"rel": "SBJ",
"tag": "Ne",
"word": "اشرف"},
我想从此数据集中删除 "deps":...?。我尝试了这段代码但不起作用,因为"depts": 的值在字典的每个元素中都不同。
import re
import simplejson as simplejson
with open("../data/cleaned.txt", 'r') as fp:
lines = fp.readlines()
k = str(lines)
a = re.sub(r'\d:', '', k) # this is for removing numbers like `1:{..`
json_data = simplejson.dumps(a)
#print(json_data)
n = eval(k.replace('defaultdict(<class "list">', 'list'))
print(n)
【问题讨论】:
-
尝试将整个json加载到字典中,而不是使用
json.dumps()然后pop这个键。 -
这是无效的 Json。您是如何生成包含该内容的 text 文件的?
-
@SergeBallesta,我使用了依赖解析器,它会生成这些数据,我想调整为 JSON 格式,但是如何?
-
@SergeBallesta,你为什么要删除你的解决方案?
-
我无法重现您在 cmets 中显示的行为,因此我认为答案没有帮助。我当然可以取消删除它,但我真的认为这是一个XY Problem...
标签: python json preprocessor