我有一个包含3列的数据框, 第一栏:有名字 第2列:将项目存储在列表中 第3列:将商品存储在列表中
columns row_index values
0 A [] []
1 B [] []
2 C [12, 32] [abc, def]
3 D [] []
4 E [65, 78] [qrst, xyz]
我想创建一个字典,使输出如下所示:
{C:{12:abc ,32:def},
E:{65:qrst,78:xyz}}
任何帮助将不胜感激
答案 0 :(得分:0)
将pandas.DataFrame.apply
与to_dict
一起使用:
new_df = df[df['values'].str.len().gt(0)].set_index('columns')
result = new_df.apply(lambda x: dict(zip(x["row_index"], x["values"])), 1).to_dict()
print(result)
输出:
{'C': {12: 'abc', 32: 'def'},
'E': {65: 'qrst', 78: 'xyz'}}