将花车列表转换为熊猫中的多列花车

时间:2018-08-31 09:36:35

标签: python pandas

我在pandas中有一列,其中包含1000个float的列表。但是,我希望具有一列float的1000列而不是一列。现在,这些列表以string类型存储。

列表示例(已裁剪):

[0.12953150272369385, 0.16092558205127716, -0.03718775138258934]

我知道可以通过遍历行并创建1000列并一一传递新值来做到这一点。但这会很慢。

有更快的方法吗?

3 个答案:

答案 0 :(得分:2)

将其放在方括号中,以便获得列表的列表:

l = [0.12953150272369385, 0.16092558205127716, -0.03718775138258934]

pd.DataFrame(l)
Out: 
          0
0  0.129532
1  0.160926
2 -0.037188

pd.DataFrame([l])
Out: 
          0         1         2
0  0.129532  0.160926 -0.037188

答案 1 :(得分:0)

如果您有多行,并且每一行都有一个浮动列表,那么最好的解决方案是:

df = pd.DataFrame({'floats': [[0.6, 0.3], [0.3, 0.4]]})
    floats
0   [0.6, 0.3]
1   [0.3, 0.4]

df = df.floats.apply(pd.Series)
    0   1
0   0.6 0.3
1   0.3 0.4

答案 2 :(得分:0)

您可以使用T来实现这一点,它会转置索引和列:

l = [0.12953150272369385, 0.16092558205127716, -0.03718775138258934]

df = pd.DataFrame(l)
df
#          0
#0  0.129532
#1  0.160926
#2 -0.037188
df.T
#          0         1         2
#0  0.129532  0.160926 -0.037188