【发布时间】:2021-03-04 23:20:49
【问题描述】:
我正在努力将 csv 导入嵌套字典。 我找到了一个对我来说几乎完美的例子:
UID,BID,R
U1,B1,4
U1,B2,3
U2,B1,2
import csv
new_data_dict = {}
with open("data.csv", 'r') as data_file:
data = csv.DictReader(data_file, delimiter=",")
for row in data:
item = new_data_dict.get(row["UID"], dict())
item[row["BID"]] = int(row["R"])
new_data_dict[row["UID"]] = item
print new_data_dict
就我而言,我还有一层嵌套要做。我的数据如下:
FID,UID,BID,R
A1,U1,B1,4
A1,U1,B2,3
A1,U2,B1,2
A2,U1,B1,4
A2,U1,B2,3
A2,U2,B1,2
结果应该是:
{"A1":{"U1":{"B1":4, "B2": 3}, "U2":{"B1":2}},
"A2":{"U1":{"B1":4, "B2": 3}, "U2":{"B1":2}}}
我必须如何完成和更正上面发布的代码?
谢谢, 托比
【问题讨论】:
-
你的输入数据有两次标题行
-
这能回答你的问题吗? csv to nested JSON?
-
@BillHuang 不,因为提到的帖子不涉及 2 个级别
标签: python csv dictionary import