熊猫:写入数据帧

时间:2013-04-04 13:57:33

标签: python-2.7 pandas

我正在尝试写入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个列表作为列,而不会丢失列表的顺序。

3 个答案:

答案 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