带日期的Pandas数据框中的Dict的Dict

2024-06-26 14:14:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下数据帧:

date       AAC      AFE     AFS     AKD    MAF   PRE                                    
2020-04-05  0       10000   0       0      0     75000
2020-04-06  0       30000   10000   0      0     0  
2020-04-10  47000   33000   20000   0      2000  8700
2020-04-11  0       0   0   0       25000  0     0  
2020-04-16  0       0   0   0       50000  0     0  
2020-04-21  0       30000   25000   0   0  1000  0  
2020-04-30  0       122000  65000   0   0  1000  0  

我正在尝试创建一个dict of dict,以便生成的字典类似于以下格式

{'2020-04-05': {'AAC': 0, 'AFE': 10000, 'AFS': 0, etc}
 '2020-04-06': {AAC: 0, 'AFE': 30000, 'AFS': 10000, etc}} 

我当前的解决方案:

d = {date: {col: df[col].values for col in df.columns} for date in demand_df.index}

产生错误的(列/轴1)结果,因为我没有得到每个产品每个日期的正确值

非常感谢任何帮助


Tags: of数据indffordateetccol
1条回答
网友
1楼 · 发布于 2024-06-26 14:14:55

可以在set_index列“date”之后使用^{}和orient=index:

print (df.set_index('date').to_dict(orient='index'))
{'2020-04-05': {'AAC': 0, 'AFE': 10000, 'AFS': 0, 'AKD': 0, 'MAF': 0, 'PRE': 75000}, 
 '2020-04-06': {'AAC': 0, 'AFE': 30000, 'AFS': 10000, 'AKD': 0, 'MAF': 0, 'PRE': 0}, 
 '2020-04-10': {'AAC': 47000, 'AFE': 33000, 'AFS': 20000, 'AKD': 0, 'MAF': 2000, 'PRE': 8700}, ...}

相关问题 更多 >