我正在尝试写入Pandas DataFrame。我有4个列表,如果需要,我可以在此DataFrame中将其转换为系列。
l1
l2
l3
l4
使用此:
df1 = DataFrame(l1)
df2 = DataFrame(l2)
df3 = DataFrame(l3)
df4 = DataFrame(l4)
我可以创建4个单独的DataFrame。但是,我想要1个DataFrame将这4个列表作为列,而不会丢失列表的顺序。
答案 0 :(得分:4)
这应该可以解决问题,只需将列表列表提供给dataframe costructor
即可DataFrame([l1, l2, l3, l4]).T
您需要对数据帧进行传输,因为它会使您的数据处于错误的方向(按行而不是按列)。如果您需要有意义的名称,可以在以后设置列名称
答案 1 :(得分:2)
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
答案 2 :(得分:1)
我使用dict的首选方法:
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