考虑以下文本场景:
df = pd.read_csv('dummy.txt', sep='|')
ID Name Email Country Quantity
0 2.0 name2 name@email.com UK 8.0
1 3.0 name3 name@email.com NaN NaN
2 NaN UK 8 NaN NaN
3 5.0 name4 name@email.com NaN NaN
4 NaN UK 8 NaN NaN
5 7.0 name5 name@email.com UK 8.0
原始数据是:
ID|Name|Email|Country|Quantity
2|name2|name@email.com|UK|8
3|name3|name@email.com
|UK|8
5|name4|name@email.com
|UK|8
7|name5|name@email.com|UK|8
所以有一个带有“|”的虚线。逻辑应该是:如果行以“|”开头 然后与它所属的上一行合并
结果应该是:
ID|Name|Email|Country|Quantity
2|name2|name@email.com|UK|8
3|name3|name@email.com|UK|8
5|name4|name@email.com|UK|8
7|name5|name@email.com|UK|8
Linux 代码完成了这项工作:
sed -z 's/\n|/|/g
但是,我无法在 Python 中执行此操作。