Python:将奇怪的字典转换为熊猫数据框架
我有一本这样的字典:Python:将奇怪的字典转换为熊猫数据框架,python,pandas,dictionary,dataframe,Python,Pandas,Dictionary,Dataframe,我有一本这样的字典: 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
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, ...]
有人能指导我如何解决这个问题吗?谢谢 您可以使用dict中的Pandas数据帧来阅读字典
pd.DataFrame.from_dict(result)
编辑
方向:{'columns','index'}
数据的“方向”。如果传递的dict的键应该是结果数据帧的列,则传递“columns”默认值。否则,如果键应该是行,则传递“index”
pd.DataFrame.from_dict(result,orient='columns')
输出:
如果要使用字典的键信息作为索引,可以使用索引的方向
输出:
您可以使用字典中的数据框来阅读字典
pd.DataFrame.from_dict(result)
编辑
方向:{'columns','index'}
数据的“方向”。如果传递的dict的键应该是结果数据帧的列,则传递“columns”默认值。否则,如果键应该是行,则传递“index”
pd.DataFrame.from_dict(result,orient='columns')
输出:
如果要使用字典的键信息作为索引,可以使用索引的方向
输出:
您只需要默认构造函数:
pd.DataFrame(result)
# Var1 Var2
#0 2.0 2.0
#1 2.0 2.0
#....
您只需要默认构造函数:
pd.DataFrame(result)
# Var1 Var2
#0 2.0 2.0
#1 2.0 2.0
#....
答案已经呈现,但只是想让它了解它是如何工作的 在构造数据帧时 Pandas DataFrame可能包含不同类型的数据,如带有标记轴行和列的二维表格数据结构,或作为系列对象的类似dict的容器。 它具有的属性参数示例
DataFrame(data=None, index=None, columns=None, dtype=None,copy=False)
查看文档的参数部分,因此,在从字典构造DataFrame时,可以使用参数数据
因此,在您的情况下,在从dict对象构建数据帧时使用参数数据是合适的
>>> pd.DataFrame(data=result)
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
或
上面应该是结果数据框的列,传递“columns”默认值。否则,如果键应该是行,则传递“index”。
答案已经呈现,但只是想让它了解它是如何工作的 在构造数据帧时 Pandas DataFrame可能包含不同类型的数据,如带有标记轴行和列的二维表格数据结构,或作为系列对象的类似dict的容器。 它具有的属性参数示例
DataFrame(data=None, index=None, columns=None, dtype=None,copy=False)
查看文档的参数部分,因此,在从字典构造DataFrame时,可以使用参数数据
因此,在您的情况下,在从dict对象构建数据帧时使用参数数据是合适的
>>> pd.DataFrame(data=result)
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
或
上面应该是结果数据框的列,传递“columns”默认值。否则,如果键应该是行,则传递“index”。
我会提到orient参数来解释,作为一个额外的点;我会提到orient参数来解释,作为一个额外的点;pd.DataFrameresult?pd.DataFrameresult?