【问题标题】:Splitting a comma separated value into separate rows in Pandas在 Pandas 中将逗号分隔值拆分为单独的行
【发布时间】:2022-01-24 23:01:41
【问题描述】:

我有一个包含数据的 csv(作为 Pandas 数据框):

Col1    Col2    Col3
1       0.034   0.1
2,3,4   1.234   0.2
5       0.3     1.3

我正在尝试找到一种方法将第二个条目“扩展”为多行(在此示例中为三行)。我试图实现的最终数据框如下所示:

Col1    Col2    Col3
1       0.034   0.1
2       1.234   0.2
3       1.234   0.2
4       1.234   0.2
5       0.3     1.3

Pandas 是否有任何内置方法可以做到这一点? 还是我只能求助于创建一个新的数据框并循环遍历多值行?

【问题讨论】:

  • 看看pandas中的explode函数。

标签: python pandas dataframe


【解决方案1】:

这是使用explode的一种方法:

df.Col1 = df.Col1.str.split(',')                                                               
df.explode('Col1')

输出:

  Col1   Col2  Col3
0    1  0.034   0.1
1    2  1.234   0.2
1    3  1.234   0.2
1    4  1.234   0.2
2    5  0.300   1.3

【讨论】:

  • 谢谢!这看起来像我一直在寻找的东西。我在这里学到了一些新东西!
  • 很高兴它有帮助!
  • 有趣且乐于助人:)
猜你喜欢
  • 2012-01-28
  • 1970-01-01
  • 2012-11-26
相关资源
最近更新 更多