我有一个csv文件,如下所示:
SUMMARY OF SURFACE ENERGY BALANCE
INCOMING NET SOLAR RADIATION BY MATERIAL NET LONG-WAVE RADIATION BY MATERIAL
SOLAR REFLECTED ------------------------------------------ INCOMING OUTGOING -----------------------------------------
DAY HR YR ON SLOPE SOLAR CANOPY SNOW RESIDUE SOIL TOTAL LONGWAVE LONGWAVE CANOPY SNOW RESIDUE SOIL TOTAL SENSIBLE LATENT SOIL
W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2 W/M2
338 24 86 30.8 5.6 19.4 0.0 5.4 0.5 25.3 290.6 317.5 -16.4 0.0 -6.3 -4.1 -26.9 -4.7 -0.8 -6.8
339 24 86 11.6 5.6 4.8 1.2 0.0 0.0 6.0 301.5 311.4 -5.2 -3.5 -0.4 -0.7 -9.9 1.3 -0.1 -7.1
...
文件的第1、3、4、10、11和12行为空
第7行是标题
第13行之后的一行是数据
我想把它读入一个数据框并做一些分析
为此,我必须:
如果我使用此代码,可以得到正确的结果:
import pandas as pd
df = pd.read_csv(path, header=3, skiprows=[7])
print(df.head())
它将像这样打印:
DAY HR YR ON SLOPE SOLAR CANOPY SNOW RESIDUE SOIL TOTAL LONGWAVE LONGWAVE CANOPY SNOW RESIDUE SOIL TOTAL SENSIBLE LATENT SOIL
0 338 24 86 30.8 5.6 19.4 0...
1 339 24 86 11.6 5.6 4.8 1...
2 340 24 86 22.2 18.5 0.0 3...
3 341 24 86 22.8 18.7 0.0 4...
4 342 24 86 48.4 37.0 4.4 7...
但是,当我调用read_csv函数时,将header参数设置为3,并将skiprows参数设置为7,我会得到这个结果(即使我需要skiprow仅在header行之后应用)
标头已忽略标头之前的空行,但skiprows无法忽略将跳过其之前的空行
结论
所以我想知道skiprows参数可以忽略空行吗
如果可能的话,我只需要知道标题行编号后Skiprow的数量,忽略从顶部开始计数的需要
我快速查看了一下documentation,似乎没有,原因是
header
在参数skip_blank_lines
设置为True
(默认情况下)时忽略了行,但是skiprows
没有考虑该参数但是,您可以在不使用
skiprows
参数的情况下读取并删除na
值但老实说,这可能不是一个好主意,因为对于具有
na
值的受影响列,数据类型将被设置为objects
相关问题 更多 >
编程相关推荐