我有一个表(dataframe)要清理,每行看起来像这样:
| 色谱柱A|B栏|
| - ------|- ------|
| 细胞1|1234 abcd 667随机事件|
| 单元格3|4455 abcd abc 847其他随机事件1结尾|
我想把它分成一个如下的表格。
| 色谱柱A|B栏|
| - ------|- ------|
| 细胞1|小行星1234|
| 细胞1|667件随机事件|
| 单元格3|小行星4455|
| 单元格3|847其他随机事件|
| 单元格3|1个结局|
因此,我们的想法是将B列中的内容拆分并转换为多行,分隔符是一组随机数(代码)。
我对Python还很陌生,自己也不知道,我该怎么做呢?谢谢!
1条答案
按热度按时间fhity93d1#
使用
Series.str.findall
+df.explode
组合:如果去除尾随空格很重要,则在
findall
匹配中将regex模式更改为r'(\d+[\s\D]+[^\d\s])'
。或者在第一个初始方法结束时应用df['Column B'] = df['Column B'].str.strip()
。