我们说我有DataFrame
filename size inverse similarity
123.txt 1 2 34
323.txt 3 1 44
222.txt 4 1 43
我想以
的形式创建一个字典{'123.txt': [1, 2, 34],
'323.txt': [3, 1, 44],
'222.txt': [4, 1, 43]}
解决方案我发现处理使用类似
之类的单值创建dict的情况df.set_index('Filename')['size'].to_dict()
答案 0 :(得分:3)
将'filename'
设为索引,进行转置,然后将to_dict
与orient='list'
一起使用:
my_dict = df.set_index('filename').T.to_dict(orient='list')
结果输出:
{'323.txt': [3, 1, 44], '222.txt': [4, 1, 43], '123.txt': [1, 2, 34]}
答案 1 :(得分:3)
这是一种理解词汇的方法:
{k: v for k, v in zip(df['filename'], df.set_index('filename').values.tolist())}
Out: {'123.txt': [1, 2, 34], '222.txt': [4, 1, 43], '323.txt': [3, 1, 44]}