将 jsonl 文件解析为有用的结构
Parsing a jsonl file into a useful structure
我正在从我的硬盘导入一个 jsonl 文件并试图将其转换为可用格式。这是我导入数据的方式。
train_data=[]
with open("Documents/data/train.jsonl",'r',encoding='utf-8') as j:
for line in j:
train_data.append(json.loads(line))
生成的数据结构如下。
train_data[1]
Out[59]:
{'id': 46971,
'img': 'img/46971.png',
'label': 1,
'text': 'text'}
基本上我想将此数据转换为字典格式,其中字典值为 "id",其余数据与该字典标签相关联。我相信类似下面的内容,但我对 Python 还很陌生,所以我可能显示不正确。
print(dict_ex)
{46971: ['img/46971.png', 1, 'text']}
# dict[key] = value
dict_ex[data['id']] = [data['img'], data['label'], data['text']]
试试这个,
result = {}
for d in train_data:
for k, v in d.items():
if k == "id":
result[v] = []
else:
result[v].append(v)
您可以创建字典并从 train_data
列表中逐一添加新元素:
di = dict()
for o in train_data:
di[o['id']] = [o['img'], o['label'], o['text']]
print(di)
>>> {46971: ['img/46971.png', 1, 'text']}
我正在从我的硬盘导入一个 jsonl 文件并试图将其转换为可用格式。这是我导入数据的方式。
train_data=[]
with open("Documents/data/train.jsonl",'r',encoding='utf-8') as j:
for line in j:
train_data.append(json.loads(line))
生成的数据结构如下。
train_data[1]
Out[59]:
{'id': 46971,
'img': 'img/46971.png',
'label': 1,
'text': 'text'}
基本上我想将此数据转换为字典格式,其中字典值为 "id",其余数据与该字典标签相关联。我相信类似下面的内容,但我对 Python 还很陌生,所以我可能显示不正确。
print(dict_ex)
{46971: ['img/46971.png', 1, 'text']}
# dict[key] = value
dict_ex[data['id']] = [data['img'], data['label'], data['text']]
试试这个,
result = {}
for d in train_data:
for k, v in d.items():
if k == "id":
result[v] = []
else:
result[v].append(v)
您可以创建字典并从 train_data
列表中逐一添加新元素:
di = dict()
for o in train_data:
di[o['id']] = [o['img'], o['label'], o['text']]
print(di)
>>> {46971: ['img/46971.png', 1, 'text']}