用多维列表创建Python字典

用多维列表创建Python字典,python,pandas,Python,Pandas,我有一个数据帧(df2),我已经将数据帧转换为列表,称为“train_list” 您可以看到下面的列车列表输出示例。(实际上,这列火车有一百万行。) 我的目标是创建一个如下所示的词典 0: {1,2,6,7}, 1: {130,131,132,134}, 2: {441,202,98,99}, ... 这是我的解决方案,但我得到了一个错误 from collections import defaultdict trainset= defaultdict(set) # creating emp

我有一个数据帧(df2),我已经将数据帧转换为列表,称为“train_list”

您可以看到下面的列车列表输出示例。(实际上,这列火车有一百万行。)

我的目标是创建一个如下所示的词典

0: {1,2,6,7},
1: {130,131,132,134},
2: {441,202,98,99}, ...
这是我的解决方案,但我得到了一个错误

from collections import defaultdict

trainset= defaultdict(set) # creating empty dictionary set

for eachline in train_list :
    uid, lid, _ = eachline.strip().split()
    uid, lid = int(uid), int(lid)
    ground_truth[uid].add(lid)

Error: "'list' object has no attribute 'strip'"

您可以使用with
set
aggregation获得此输出,最后:

[外]


请尝试
df2.groupby('user')['poid'].agg(set.)。to_dict()
如果您在回复中键入您的评论,我将批准它。非常感谢。
0: {1,2,6,7},
1: {130,131,132,134},
2: {441,202,98,99}, ...
from collections import defaultdict

trainset= defaultdict(set) # creating empty dictionary set

for eachline in train_list :
    uid, lid, _ = eachline.strip().split()
    uid, lid = int(uid), int(lid)
    ground_truth[uid].add(lid)

Error: "'list' object has no attribute 'strip'"
df2.groupby('user')['poiid'].agg(set).to_dict()
{0: {1, 2, 6, 7},
 1: {130, 131, 132, 134},
 2: {98, 99, 202, 441},
 3: {450, 451, 452, 453}}