Pandas是python数据处理重要的一个第三方库。
import pandas as pd 一、Pandas库入门 1.Pandas库数据类型两个数据类型:Series,DataFrame
基于上述数据类型的各类操作
基本操作、运算操作、特征类操作、关联类操作
Pandas库和Numpy库的区别:
NumpyPandas基础数据类型扩展数据类型关注数据的结构表达关注数据的应用表达维度:数据间的关系维度:数据和索引间的关系1.1Pandas的Series类型Series类型由一组数据及与之相关的数据索引组成。
(1)Series类型的创建
列表创建,index与列表元素个数一致:
自动索引:
自定义索引:
从标量值创建,index表达Series类型的尺寸:
从字典类型创建,键值对中的“键”是索引,index从字典中进行选择操作
从ndarry类型创建,索引和数据都可以通过ndarry类型创建
其他函数创建,range()函数等。
(2)Series类型的基本操作
Series类型包括index和values两部分。
Series类型的操作类似ndarry类型。
Series类型的操作类似Python字典类型。
Series类型对齐问题:
Series+Series
Series类型在运算中会自动对齐不同索引的数据
Series类型的name属性
Series对象和索引都可以有一个名字,存储在属性.name中
Series类型的修改
Series对象可以随时修改并立即生效
Series是一维带“标签”数组
index_0 ->data_a
Series基本操作类似ndarry和字典,根据索引对齐。
1.2Pandas的DataFrame类型DataFrame类型由共用相同索引的一组列组成。
DataFrame是一个表格型的数据类型,每列值类型可以不同。
DataFrame既有行索引、也有列索引。
DataFrame常用于表达二维数据,也可以表达多维数据。
(1)DataFrame类型的创建
二维ndarray对象:
由一维ndarray、列表、字典、元组或Series构成的字典
从一维ndarray对象字典创建
从列表类型的字典创建
DataFrame是二维带“标签”数组
DataFrame基本操作类似Series,依据行列索引。
2.Pandas库的数据类型操作如何改变Series和DataFrame对象?
(1)增加或重排:重新索引
reindex()能够改变或重排Series和DataFrame索引
.reindex(index=None,columns=None,…)的参数
索引类型:
Series和DataFrame的索引是Index类型
Index对象是不可修改类型
索引类型常用方法:
索引类型的使用:
(2)删除:drop
.drop()能够删除Series和DataFrame指定行或列索引
(1)算数运算法则
算数运算根据行列索引,补齐后运算,运算默认产生浮点数。
补齐时缺项填充NaN
二维和一维、一维和零维件为广播运算
采用+—*/符号进行的二元运算产生新的对象
注:自动补齐,缺项补NaN
(2)方法型操作
不同维度间为广播运算,一维Series默认在轴1参与运算。
使用运算方法可以令一维Series参与轴0运算
(3)比较运算法则
比较运算只能比较相同索引的元素,不进行补齐
二维和一维、一维和零维间为广播运算
采用>、<、>=、<=、==、!=等符号进行的二元运算产生布尔对象
同维度运算,尺寸一致
不同维度,广播运算,默认在1轴
总结:
Series=索引+一维数据DataFrame=行列索引+二维数据理解数据类型与索引的关系,操作索引即操作数据。重新索引、数据删除、算数运算、比较运算。像对待单一数据一样对待Series和DataFrame对象。 二、Pandas数据的特征分析 1.数据的排序.sort_index()方法在指定轴上根据索引进行排序,默认升序。
.sort_index(axis=0,ascending=True)
.sort_values()方法在指定轴上根据数值进行排序,默认升序。
Series.sort_values(axis=0,ascending=True)
DataFrame.sort_values(by,axis=0,ascending=True)
by:axis轴上的某个索引或索引列表
注:NaN统一放到排序末尾
适用于Series和DataFrame类型:
适用于Series类型:
一个方法涵盖所有:
看一下.describe()的类型:
适用于Series和DataFrame类型:
适用于Series和DataFrame类型,滚动计算(窗口计算):
相关性:
正相关、负相关、不相关
衡量相关性的方法:
(1)协方差:
(2)Pearson相关系数
r的取值范围[-1,1]
r的绝对值:
0.8-1.0极强相关
0.6-0.8强相关
0.4-0.6中等程度相关
0.2-0.4弱相关
0.0-0.2极弱相关或无相关
适用于Series和DataFrame类型:
实例:房价增幅与M2增幅的相关性
总结: