Pandas读取带有可变行的CSV文件,以便在行的开头跳过特殊字符

时间:2017-01-30 21:56:26

标签: python csv pandas

使用pandas,read_csv方法读取CSV文件时,如果事先不知道行数,如何跳过这些行?

我有一个CSV文件,其中包含文件开头的一些元数据,然后包含标题和实际数据。

  • 元数据始终以符号开头,它始终位于CSV文件的顶部。
  • 元数据的行数不固定。

文件 sample_file.csv

的示例
# Meta-Data Line 1
# Meta-Data Line 2
# Meta-Data Line 3
col1,col2,col3
a,b,c
d,e,f
g,h,i

我如何使用Pandas read_csv函数和skiprows参数来读取csv?

df = pd.read_csv('sample_file.csv', skiprows=?)

Pandas 0.19.X或更高版本是否支持此用例?

1 个答案:

答案 0 :(得分:5)

comment是您正在搜索的内容:

df = pd.read_csv('sample_file.csv', comment='#')

来自文档:

  

评论:str,默认无

     

表示不应该是行的剩余部分   解析。如果在行的开头找到,则该行将被忽略   共。此参数必须是单个字符。像空的   行(只要skip_blank_lines = True),完全注释行   由参数标题忽略但不是由skiprows忽略。例如,如果   comment ='#',使用header = 0解析'#emptyna,b,cn1,2,3'将导致   'a,b,c'被视为标题。