可以使用 Pandas 中的字符串方法 str.split () 将每个单元格中的文本按照换行符分割成多行,然后使用 Pandas 的 melt () 方法将列转换为行。
这是一个更详细的例子,首先使用 `str.split('\n')` 将一行拆分为多行,然后使用 `explode()` 方法将拆分的列表转换为多行,同时保持其他列的值:
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'A': ['1\n2\n3', '4\n5\n6'], 'B': ['7\n8\n9', '10\n11\n12']})
# 将每个单元格中的文本按照换行符分割成多行
df = df.assign(A=df['A'].str.split('\n'), B=df['B'].str.split('\n'))
# 使用 explode 方法将列表转换为行
df = df.explode('A').reset_index(drop=True)
df = df.explode('B').reset_index(drop=True)
print(df)
这将输出:
```
A B
0 1 7
1 2 8
2 3 9
3 4 10
4 5 11
5 6 12
```
在这个例子中,我们只对 'A' 和 'B' 列进行了操作,但是你可以根据需要对任何列进行此操作。
有疑问加站长微信联系(非本文作者)