我正在尝试写入 Pandas DataFrame。我有 4 个列表,如有必要,我可以在此 DataFrame 中将其转换为系列。
l1
l2
l3
l4
使用这个:
df1 = DataFrame(l1)
df2 = DataFrame(l2)
df3 = DataFrame(l3)
df4 = DataFrame(l4)
我能够创建 4 个单独的 DataFrame。但是,我想要 1 个以这 4 个列表作为列的 DataFrame,而不会丢失列表的顺序。
我正在尝试写入 Pandas DataFrame。我有 4 个列表,如有必要,我可以在此 DataFrame 中将其转换为系列。
l1
l2
l3
l4
使用这个:
df1 = DataFrame(l1)
df2 = DataFrame(l2)
df3 = DataFrame(l3)
df4 = DataFrame(l4)
我能够创建 4 个单独的 DataFrame。但是,我想要 1 个以这 4 个列表作为列的 DataFrame,而不会丢失列表的顺序。
这应该可以解决问题,只需将列表列表提供给数据框构造函数
DataFrame([l1, l2, l3, l4]).T
您需要传输数据框,因为它会将您的数据置于错误的方向(按行而不是按列)。如果您需要有意义的名称,您可以在之后设置列名称
In [3]: l1 = range(5)
In [4]: l2 = range(5,10)
In [5]: l3 = range(10,15)
In [6]: l4 = range(15,20)
In [10]: pd.DataFrame([l1,l2,l3,l4],index=['l1','l2','l3','l4']).T
Out[10]:
l1 l2 l3 l4
0 0 5 10 15
1 1 6 11 16
2 2 7 12 17
3 3 8 13 18
4 4 9 14 19
我使用字典的首选方法:
In [1]: pd.DataFrame({'l1':l1, 'l2':l2, 'l3':l3, 'l4':l4})
Out[1]:
l1 l2 l3 l4
0 0 5 10 15
1 1 6 11 16
2 2 7 12 17
3 3 8 13 18
4 4 9 14 19