下面主要使用pandas包里面的数据加载函数进行讲解。

读写文本格式数据

pandas的数据加载函数表格:

函数

说明

read_csv

从文件、URL、文件型对象中加载带分隔符的数据。默认分隔符为逗号

read_table

从文件、URL、文件型对象中加载带分隔符的数据。默认分隔符为制表符(“\t”)

read_fwf

读取定宽列格式数据(也就是说,没有分隔符)

read_clipboard

读取剪切板中的数据,可以看做read_table的剪切板版。在将网页转换为表格时很有用

下面说明read_csv常用参数作用:

参数名

作用

header

用作列名的行号。默认为0(第一行),如果没有header行就应该设置为None

names

用于结果的列名列表,结合header=None

index_col

用作行索引的列编号或列名。可以是单个名称/数字或由多个名称/数字组成的列表(层次化索引)

sep或delimiter

用于对行中各字段进行拆分的字符序列或正则表达式!

path

表示文件系统位置、URL、文件型对象的字符串

skiprows

需要忽略的行数(从文件开始出算起),或需要跳过的行号列表(从0开始)

na_values

一组用于替换NA的值

comment

用于将注释信息从行尾拆分出去的字符(一个或多个)

parse_dates

尝试将数据解析为日期,默认为False。如果为True,则尝试解析所有列。此外,还可以指定需要解析的一组列号或列名。如果列表的元素为列表或元组,就会将多个列组合到一起再进行日期解析工作(例如,日期/时间分别位于两个列中)

keep_date_col

如果连接多列解析日期,则保持参与连接的列。默认为False

converters

由列号/列名跟函数之间的映射关系组成的字典。例如:{‘foo’:f}会对foo列的所有值应用函数f

dayfirst

当解析有歧义的日期时,将其看做国际格式(例如,8/6/2017→June8,2017)。默认为False

date_parser

用于解析日期的函数

nrows

需要读取的行数(从文件开始处算起)

iterator

返回一个TextParser以便逐块读取文件

chunksize

文件块的大小(用于迭代)

skip_footer

需要忽略的行数(从文件末尾处算起)

verbose

打印各种解析器输出信息,比如“非数值列中缺失值的数量”等

encoding

用于unicode的文本编码格式。例如,”utf-8”表示用UTF-8编码的文本

squeeze

如果数据经解析后仅含一列,则返回Series

thousands

千分位分隔符,如“,”或“.”

例如:

In [26]: %pwd
Out[26]: 'C:\\Users\\Administrator'

假设在’C:\Users\Administrator’路径下有文件’test.abc’以文本格式存储着:

x,y,z,tittle
1,2,3,aa
4,5,6,bb
7,8,9,cc

则可以这样读取:

In [27]: pd.read_csv('test.abc')  #基本读取
Out[27]: 
   x  y  z tittle
0  1  2  3     aa
1  4  5  6     bb
2  7  8  9     cc

In [28]: pd.read_csv('test.abc',names=['x','y','z','tittle'],index_col='tittle')
Out[28]: 
        x  y  z
tittle         
tittle  x  y  z
aa      1  2  3
bb      4  5  6
cc      7  8  9