是否有一种智能/简单的方法告诉pandas中的read_csv在某个“end of section”标志之后不加载数据?或者它是否会停止,如果它到达一个空行?
data = pd.read_csv(path, **params)
eos_line = (data['id'] == eos_string).idxmax()
data = data.drop(range(eos_line-2, data.shape[0]))
我觉得他们应该是一个更好的方式。不幸的是,在调用read_csv之前,我不知道要跳过的页脚行数或长度。数据大致类似于
1,2,3
4,5,6
dont want any data after this line
7,8,9
10,11,12
(注意:-2是b / c,在节字符串结束之前实际上有2个空行,但是如果read_csv只读到这一点,我猜dropna()会毫不费力地删除这两行)
答案 0 :(得分:1)
Wes确实想到了一切!
In [40]: data = """A,B,C
....: 1,2,3
....: 4,5,6
....: 7,8,9
....: want to skip this
....: also also skip this
....: """
In [41]: read_csv(StringIO(data), skip_footer=2)
Out[41]:
A B C
0 1 2 3
1 4 5 6
2 7 8 9