pandas.read_csv函数参数详情
2018-08-09 本文已影响14人
DATA_KENGOU
pandas用于读取数据十分方便,包含很多直接将数据源读取为DataFrame的函数,下面以read_csv函数为例子说明一下部分参数的含义。
pandas读取csv格式函数参数比较多,一些参数上的设置就可以避免自己再去编写一些异常处理或者重复的代码逻辑了,比如其中第一个路径参数可以直接放csv文件的网络地址,很是方便。
pandas.read_csv(
filepath_or_buffer,
#1.文件handle;2.StringIO对象;3. 文件路径string;
#4.URL,包括http、ftp、file,例如(file://localhost/path/to/table.csv
sep=', ',
#分隔符,需要注意的是engine='c'时候不能自动检测分隔符,而engine='python'可以,用的是csv.Sniffer,
#长度大于1的分隔符按正则表达式处理,强制使用engine='python'
delimiter=None, #和sep参数类似
header='infer',
#被用作列名的行的编号,默认参数的意思为:如果没有names参数,则认为第一行认为是列名,即header=0
#设置header=0会覆盖下面的names参数。
names=None, #列名的list,会被去重处理
index_col=None,
usecols=None,
#类型为列表,列表元素可以是列名,也可以是列是第几列的数字。列表中元素的顺序不起作用。
squeeze=False,
prefix=None,
mangle_dupe_cols=True,
dtype=None,
#列数据类型,传入字典,{列名:类型},类型可以使用numpy的数据类型
engine=None,
#解析数据的引擎,注意选择engine='c'时文件路径中不要有中文,而且很多参数设置在选择'c'时候不起作用。
converters=None,
true_values=None,
false_values=None,
skipinitialspace=False,
skiprows=None,
nrows=None,
#要读多少行,超过内存的大文件处理时可以用到
na_values=None,
keep_default_na=True,
na_filter=True,
verbose=False,
skip_blank_lines=True,
parse_dates=False,
infer_datetime_format=False,
keep_date_col=False,
date_parser=None,
dayfirst=False,
iterator=False,
chunksize=None,
compression='infer',
thousands=None,
decimal=b'.',
lineterminator=None,
quotechar='"',
quoting=0,
escapechar=None,
comment=None,
encoding=None,
dialect=None,
tupleize_cols=None,
error_bad_lines=True,
#由于字段数太多等引起异常默认被抛出,而且没有返回,可以设置为False,这样就会扔掉这些错误的数据,然后得到不包含错误行的DataFrame
warn_bad_lines=True,
skipfooter=0,
doublequote=True,
delim_whitespace=False,
low_memory=True,
memory_map=False,
float_precision=None)