我在python中使用大型CSV文件,我正在尝试根据绑定到唯一标识符的文本列表创建字典 . 在CSV中,Items列的每个单元格中的值最初是自由文本,现在是逗号分隔列表 . 数据如下所示:
ID Items
123 'A', 'B', 'C'
234 'A', 'C', 'D'
567 'A', 'D', 'E', 'F'
我正在尝试计算Items列中每个元素的唯一标识符(即有多少个唯一ID有A,有多少有B) . 有没有办法用项目作为键创建字典?像这样:
{'A': 123, 234, 567 'B': 123 'C': 123, 234 'D': 234, 567}
我正在尝试使用for循环 . 首先,我确定了我想要使用的csv列 - 即 . 项目(10) . 然后我想遍历列表中的每个元素 .
dict = {}
reader = csv.reader(inF)
for row in reader:
items = row[10]
for x in items:
if x not in dict:
dict[x] += x
1 回答
根据您提供的文件格式,这将有效 . 但是根据您拥有的边缘情况,您可能需要修改正则表达式 . 我没有使用csv阅读器,因为在这种情况下,正则表达式看起来很容易 .
输出: