Skip to main content
 首页 » 编程设计

Python:将奇怪的字典转换为 Pandas之数据框

2025年05月04日14lori

我有一本看起来像这样的字典:

result =  
{'Var1': [2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,0.0,0.0,0.0,0.0], 
 'Var2': [2.0,2.0,2.0,0.0,2.0,2.0,2.0,0.0,2.0,2.0,2.0,0.0,2.0,2.0,2.0,0.0]} 

我需要得到一个如下所示的数据框:

   Var1   Var2 
1   2.0    2.0 
2   2.0    2.0 
3   2.0    2.0 
4   2.0    0.0 
..   ..     .. 

我试过这样做:

pd.DataFrame(result.items(), columns=['A', 'B']).T 

我得到了类似的东西:

                           0                             1 
A                        Var1                         Var2 
B   [2.0, 2.0, 2.0, 2.0, ...]    [2.0, 2.0, 2.0, 0.0, ...] 

有人可以指导我如何解决这个问题吗?谢谢!

请您参考如下方法:

您可以使用 Pandas Dataframe from_dict 来读取字典

pd.DataFrame.from_dict(result) 

编辑

方向:{'列','索引'}

数据的“方向”。如果传递的 dict 的键应该是结果 DataFrame 的列,则传递“columns”(默认)。否则,如果键应该是行,则传递“索引”。

pd.DataFrame.from_dict(result,orient='columns') 

输出:

    Var1    Var2 
0   2.0 2.0 
1   2.0 2.0 
2   2.0 2.0 
3   2.0 0.0 
4   2.0 2.0 
5   2.0 2.0 
6   2.0 2.0 
7   2.0 0.0 
8   2.0 2.0 
9   2.0 2.0 
10  2.0 2.0 
11  2.0 0.0 
12  0.0 2.0 
13  0.0 2.0 
14  0.0 2.0 
15  0.0 0.0 

如果想使用字典的键信息作为索引,可以使用index的orientation

pd.DataFrame.from_dict(result,orient='index') 

输出:

         0  1   2   3   4   5   6   7   8   9   10  11  12  13  14  15 
Var1    2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 
Var2    2.0 2.0 2.0 0.0 2.0 2.0 2.0 0.0 2.0 2.0 2.0 0.0 2.0 2.0 2.0 0.0