pandas基础学习(1)
1.介绍
pandas是常用的数据分析库,用于处理表格型或者异质性数据,主要有两种数据类型:Series和DataFrame。
本文采用的是Jupyter notebook , 导入库语句:import pandas as pd
Series是一维数据型对象,粗略的理解,有一点似于C语言中的数组值values+可重新命名的index,即索引,可以认为是一个长度固定的字典。是DataFrame的组成部分。
DataFrame是二维结构,是一张表,有两条轴,axis=0(index行)与 axis=1(columns列) 。与R语言的数据框类似,每一个列(属性列)数据类型可不同,分析的范围较广。
2.创建
Series的创建比较简单,可将列表类型、字典类型直接转换,或者调用numpy中的arange生成。
DataFrame的创建常用是用字典类型,键转换为columns,或者调用numpy.arange.reshape()生成数据,在创建时可创建列名的列表,调用columns进行赋值。
二者共同之处在于,index是否重命名,默认为从0开始,步长为1的递增数列。
例如:
另:在创建过程中可能会出现数据缺失(NA),可用isnull或者notnull来进行检测,返回值为True或False。
3.DataFrame基本操作
(1)查:
列查找:
方式1::‘索引’,即用 [] 调用索引和列名直接检索。
若对行也有要求:
特别说明:Series切片包含尾部!与列表切片不同!
方式2:条件(如=、!=)布尔值进行过滤的检索
行查找:
调用函数:loc(轴标签 即名称)和iloc函数(整数标签 即序列号)进行选取。
南京序列号为2,则用iloc同样可以检索到:
(2)删:
方式1:运用python的关键字 del。
删去一个属性列
特别说明:从DataFrame选取的列是数据的视图,对Series的操作会反映到DataFrame中。
方式2:运用drop函数
说明:
a.默认是删除索引行,若要删除列,则需设置参数axis=1。
b.默认返回的是新对象,原数据没有发生更改。
c.设置inplace=True ,修改的是原数据。
(3)改:
方法一:(此为原DataFrame被更改)
列的引用是可以修改的。
一旦索引对象确定,是不可变的,用户不可以进行修改。
方法二:reindex方法,利用index进行重新行排序,列可以用columns关键字,若数据缺失可选择填充。
例1:
例2:
特别注意:此时的原data并没有发生改变。