【发布时间】:2017-09-10 18:02:44
【问题描述】:
我有一个包含列表的列的数据框。我想要 A)查找列表的所有唯一值 B) 制作格式为 {uniquevalue : [indexA, indexB,...]} 的字典,其中索引对应于包含唯一值的数据帧行的索引。
我已经完成了 A,但是我的 B 代码创建了一个字典,它只包含所有索引,无论它们是否包含在行中。你能帮忙吗?
import pandas as pd
df = pd.read_excel(io = 'links.xlsx')
unique_list = []
for row in df['relevant_links']:
row_list = row.split(sep = ', ')
unique_list.extend(row_list)
unique_set = set(unique_list)
unique_dict = dict.fromkeys(unique_set, [])
print(unique_dict.keys())
row_idx = 0
for row in df['relevant_links']:
[unique_dict[i].append(row_idx) for i in str(row).split(', ') if i in unique_dict]
row_idx += 1
【问题讨论】:
标签: python pandas dictionary