熊猫-将具有多个值的行拆分为新行

时间:2019-04-01 14:57:08

标签: pandas

我有一列的数据框。一些行具有多个值,并用逗号分隔。我希望每一行只有一个值。

以下是我的数据框的外观:

0,apples
1,bananas
2,oranges,kiwis

预期输出:

apples
bananas
oranges
kiwis

1 个答案:

答案 0 :(得分:1)

设置示例:

Import pandas as pd

df = pd.DataFrame({"Apples", "bananas", "oranges, kiwis"})

使用.split()

df = df.apply(lambda r: r[0].split(','), axis=1)

现在您需要在列表中使用它,可以使用for循环,但是我喜欢列表理解:

dlist = [item for row in df for item in row]

现在您可以使用列表创建新的数据框:

df_out = pd.DataFrame(dlist)