我有一个结构不良的CSV文件,名为file.csv
,我想使用Python将其拆分为多个CSV。
|A|B|C|
|Continent||1|
|Family|44950|file1|
|Species|44950|12|
|Habitat||4|
|Species|44950|22|
|Condition|Tue Jan 24 00:00:00 UTC 2023|4|
|Family|Fish|file2|
|Species|Bass|8|
|Species|Trout|2|
|Habitat|River|3|
新文件需要根据Family
行之间的所有内容进行分隔,例如:file1.csv
|A|B|C|
|Continent||1|
|Family|44950|file1|
|Species|44950|12|
|Habitat||4|
|Species|44950|22|
|Condition|Tue Jan 24 00:00:00 UTC 2023|4|
file2.csv
|A|B|C|
|Continent||1|
|Family|Fish|file2|
|Species|Bass|8|
|Species|Trout|2|
|Habitat|River|3|
当Species
出现之间的行数不一致时,实现这一点的最佳方法是什么?
3条答案
按热度按时间xghobddn1#
如果你的档案真的是这样),则可以使用标准库模块
itertools
中的groupby
:Pandas的解决方案是:
nuypyhwy2#
brtdzjyr3#
下面是一个纯python的工作方法: