Python—Pandas工具的使用(一)

Pandas是Python下最强大的数据分析和探索工具(应该没有之一)。Pandas的功能非常强大,支持类似于SQL的数据增、删、查、改,并且带有丰富的数据处理函数;支持时间序列分析功能;支持灵活处理缺失数据等。

Pandas的基本数据结构是Series和DataFrame。Series就是序列,类似一维数组;DataFrame则是相当于一张二维表格,类似二维数组,它的每一列都是一个Series。

本章主要介绍Pandas的基本操作,就是怎样去读数据文本并对读出的数据作一些初步处理。



pandas可以将读取到的表格型数据(文件不一定要是表格)转成DataFrame类型的数据结构,然后我们可以通过操作DataFrame进行数据分析,数据预处理以及行和列的操作等。下面介绍一些常用读取文件的方法。

常见的数据文本为csv文件,数据之间是以逗号分隔的。下图为一个示例csv文本内容:

使用:read_csv函数

功能:从文件、URL、文件新对象中加载带有分隔符的数据,默认分隔符是逗号。

如果读取分隔符为空格的数据该怎么办呢?这时就可设置sep参数了,读取数据格式如下:

设置sep参数为空格,可得到:

对于不规则分隔符,使用正则表达式读取文件

将正则表达式赋给sep参数,如当分隔符并不是单个的空格,也许有的是一个空格有的是多个空格时,如果这个时候还是采用sep=" "来读取文件,它会将空格也做为数据:

使用正则表达式后:

如果分隔符为制表符,即一般所说的表格形式,则可将分隔符设为"\t":

同样,也可使用正则表达式,正则表达式功能是很强大的,详细可看看正则表达式的规则,后期也会介绍到;

也可使用read_table函数

功能:从文件、URL、文件型对象中加载带分隔符的数据,默认分隔符为制表符("\t")。我们也可以通过指定read_table的sep参数来修改默认的分隔符


从上面例子可以看出系统默认第一行作为标题,读取的时候可设置header参数设置标题。默认时,header = 0;如果设置header = None时,系统会不读取标题,结果如下:

通过设置names参数,可设置文件标题,如:

通过设置index_col参数可设置列索引,如:

如果不设置列索引,默认会使用从0开始的整数索引。当对表格的某一行或列进行操作之后,在保存成文件的时候你会发现总是会多一列从0开始的列,如果设置index_col参数来设置列索引,就不会出现这种问题了。

如果不需要数据文件中的某一行,可使用skip_rows参数跳过该行,如:

将数据以表的形式赋给data后,第一行默认为标题行。可使用类似于读取字典中的数值读出data中的一列或几列,如:

使用data.ix[1]读出一行:

经常使用data.ix读出所需要的特征值,如读取age与class两列的数值作为特征值,即为data中的2,3两列,pandas好像不推荐使用ix,使用命令iloc运行效果也会一样:

使用describe()函数可对a做出一些统计量,如:


这章主要据介绍使用Pandas工具对数据文本进行读取,是数据分析的第一步。过后会介绍一些使用Pandas对数据进行一些常用的数据分析手段,如缺失值处理、相关性分析及统计分析等。

更多机器学习相关内容请关注“机器学习与实践”公众号:

 

部分参考:

1、张良均、王路等,《Python数据分析与挖掘实战》;

2、https://blog.csdn.net/sinat_29957455/article/details/79054126;

3、https://blog.csdn.net/qq_16234613/article/details/64217337

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值