用Pandas读取CSV,看这篇就够了

2022-10-28

01 语法

基本语法如下,pd为导入Pandas模块的别名:

pd.read_csv(filepath_or_buffer: Union[str, pathlib.Path, IO[~AnyStr]],              sep=,, delimiter=None, header=infer, names=None, index_col=None,              usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True,              dtype=None, engine=None, converters=None, true_values=None,              false_values=None, skipinitialspace=False, skiprows=None,              skipfooter=0, 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,              cache_dates=True, iterator=False, chunksize=None,              compression=infer, thousands=None, decimal: str = .,              lineterminator=None, quotechar=”, quoting=0,              doublequote=True, escapechar=None, comment=None,              encoding=None, dialect=None, error_bad_lines=True,              warn_bad_lines=True, delim_whitespace=False,              low_memory=True, memory_map=False, float_precision=None)

一般情况下,会将读取到的数据返回一个DataFrame,当然按照参数的要求会返回指定的类型。

02 数据内容

filepath_or_buffer为第一个参数,没有默认值,也不能为空,根据Python的语法,第一个参数传参时可以不写参数名。可以传文件路径:

# 支持文件路径或者文件缓冲对象  # 本地相对路径  pd.read_csv(data/data.csv) # 注意目录层级  pd.read_csv(data.csv) # 如果文件与代码文件在同一目录下  pd.read_csv(data/my/my.data) # CSV文件的扩展名不一定是.csv  # 本地绝对路径  pd.read_csv(/user/gairuo/data/data.csv)  # 使用URL  pd.read_csv(https://www.gairuo.com/file/data/dataset/GDP-China.csv)

需要注意的是,Mac中和Windows中路径的写法不一样,上例是Mac中的写法,Windows中的相对路径和绝对路径需要分别换成类似datadata.csv和E: datadata.csv的形式。另外,路径尽量不要使用中文,否则程序容易报错,这意味着你存放数据文件的目录要尽量用英文命名。

可以传数据字符串,即CSV中的数据字符以字符串形式直接传入:

from io import StringIO  data = (col1,col2,col3           a,b,1           a,b,2           c,d,3)  pd.read_csv(StringIO(data))  pd.read_csv(StringIO(data), dtype=object)

也可以传入字节数据:

from io import BytesIO  data = (bword,length           bTrxc3xa4umen,7           bGrxc3xbcxc3x9fe,5)  pd.read_csv(BytesIO(data))  03 分隔符

sep参数是字符型的,代表每行数据内容的分隔符号,默认是逗号,另外常见的还有制表符( )、空格等,根据数据的实际情况传值。

# 数据分隔符默认是逗号,可以指定为其他符号  pd.read_csv(data, sep= ) # 制表符分隔tab  pd.read_table(data) # read_table 默认是制表符分隔tab  pd.read_csv(data, sep=|) # 制表符分隔tab  pd.read_csv(data,sep=”(?

您好!请登录

点击取消回复