with open('test.csv') as f:
reader=csv.reader(f)
counter=0
for row in reader:
if(''.join(row).startswith('colum1')):
starting_row=counter # get the valid row programatically
counter+=1
break
pd.read_csv('test.csv',skiprows=starting_row) # skip previous rows
from io import StringIO
with open('filename.csv') as f:
lines = f.readlines()
s = StringIO(''.join((l for l in lines if ':' not in l)))
pd.read_csv(s)
或者:
with open('filename.csv') as f:
lines = f.readlines()
skip_rows_idx = [i for i, l in enumerate(lines) if ':' in l]
pd.read_csv('filename.csv', skiprows=skip_rows_idx)
如果标头中没有冒号,则可以修改上面的代码(第一个示例)以删除第一行,如下所示:
import itertools
s = StringIO(''.join(itertools.dropwhile(lambda l: ':' in l, lines)))
我会这样做:
或者:
如果标头中没有冒号,则可以修改上面的代码(第一个示例)以删除第一行,如下所示:
(假设在标题之后没有“坏”行)。你知道吗
相关问题 更多 >
编程相关推荐