从包含列表列的python列表列表中创建一个新的pandas数据帧

时间:2018-03-28 18:36:36

标签: python pandas

我有一个列表的python列表,例如[["chunky","bacon","foxes"],["dr_cham"],["organ","instructor"],...]并且想要创建一个包含列表的pandas数据框:

 0 ["chunky","bacon","foxes"] 
 1 ["dr_cham"] 
 2 ["organ","instructor"] .
 . .

std构造函数(l是这里的列表)

pd.DataFrame(l)
在这种情况下,

返回一个包含3列的数据帧。

这将如何运作?我确定它非常简单,但我一直在寻找解决方案,并且由于某些不明原因无法解决问题。

谢谢, 乙

2 个答案:

答案 0 :(得分:2)

以下代码应达到您的目的:

import pandas as pd

l = [["hello", "goodbye"], ["cat", "dog"]]

# Replace "lists" with whatever you want to name the column
df = pd.DataFrame({"lists": l})

打印df后,我们

              lists
0  [hello, goodbye]
1        [cat, dog]

希望这会有所帮助 - 让我知道我是否可以澄清任何事情!

答案 1 :(得分:1)

这种模式很少是一个好主意并且违背了Pandas的目的,但是如果你有一些需要它的不寻常的用例,你可以通过在你的主列表中进一步嵌套你的内部列表来实现它,然后从中创建一个DataFrame:

l = [[x] for x in l]
df = pd.DataFrame(l)

                        0
0  [chunky, bacon, foxes]
1               [dr_cham]
2     [organ, instructor]