我有一个 .csv 文件,其中 2+ 个空行代表一个新数据部分。但是我不知道每个部分有多少行。有没有办法直接读取熊猫数据框并在前 2 个以上的空白行处停止?
数据如下(来自 Google 趋势结果的 .csv 文件,此处被截断)。
Web Search interest: zts
Worldwide; 2004 - present
Interest over time
Week,zts
2004-01-04 - 2004-01-10,0
2004-01-11 - 2004-01-17,80
Top regions for zts
Region,zts
Slovakia,100
Slovenia,23
Top cities for zts
City,zts
Bratislava (Slovakia),100
Wroclaw (Poland),39
Top searches for zts
focus zts,100
ford zts,90
Rising searches for zts
2002 focus zts,Breakout
battery tester,Breakout
现在,我使用csv.reader()
并循环遍历所有行,并保留与第一列中的日期正则表达式匹配且有两列的行。但这似乎很骇人听闻。
如果我使用类似的东西pandas.read_csv(input_file, header=4)
(然后稍后使用日期正则表达式来查找正确的部分),那么当最后一部分有三列时它会失败(这里没有,但它可以)。
有没有办法在没有先验知道行数的情况下阻止我pandas.read_csv()
在第一个块之后?理想情况下,我想将此 .csv 解析为五个数据帧(每个数据部分一个),但此时我很高兴抓住第一部分。