一、panda的数据结构
1.1 Series
Series是一种以为数组型对象,包含一个值序列,并且包含了数据标签,成为索引(index)。最简单的序列可以仅有一个数组形成。
默认索引从0开始,通过values、index属性获得Series对象的值和索引:
可以创建和修改索引序列:
使用字典生成一个Series,可以将字典按照想要的顺序传递给构造函数,
缺失值用NaN表示。
缺失数据用isnull和notnull函数检查
Series实例也有isnull和notnull方法
对齐索引操作:索引将是索引对的并集
Series对象自身和index有name的属性
1.2 DataFrame
DataFrame可以被视为一个共享相同索引的Series的字典
利用字典生成DataFrame
DataFrame的head()方法只展示头五行,也可以指定行数
可以指定列的顺序
可以按标记或属性那样检索列
赋值给列
将Series赋值给一列,Series的索引将按照DataFrame重新排列,并在空缺处填充缺失值NaN
如果被赋值的列不存在,会生成新列。del关键字可以删除列
创建一列布尔值,用frame2.F的语法无法创建新的列
显示列名
从DataFrame中选取的列是数据的视图,而不是拷贝。因此对Series的修改会映射到DataFrame中。如需复制应当使用Series的copy方法。
包含字典的嵌套字典,内部字典的键值会被作为行索引值
转置,但不会改变frame3
包含Series的字典也可以用来构造DataFrame
1.3索引对象
索引对象不可修改,分享索引对象更安全:
索引可以包含重复标签:
索引有一些方法和属性,如计算索引唯一序列,计算两个索引的并、交集等
二、基本功能
重建索引
数据按新索引排列,如果某个索引之前不存在,会引入缺失值
不改变原对象
对于顺序数据,如时间,重建索引会插填值。methed可选参数ffill填充时用前值,bfill填充时用后值
重建列名
使用loc 进行标签索引
删除条目
传递axis=1,删除列值
inplace = True 真正清除删除的数据
索引、选择与过滤
使用周标签loc或整数标签iloc选取子集
fill_value设置填充值
DataFrame与Series间的操作
行上广播
列上广播
排序:
sort_index()按索引排序
sort_values()按值排序,缺失值会被排到尾部
对DataFrame排序,使用一列多多列作为排序键。传递参数by
rank()排名,有相同的数,取他们排名的平均数,如7的排名,(6+7)/2 = 6.5
按出现的次序排名
三、描述性统计的概述与计算
自动排除NA值,使用skipna实现不排除NA值
汇总统计
非数值的汇总统计
相关性corr,协方差cov
唯一值、计数