Python第三方库Pandas2020-03-12

本文是作者学习课程Python数据分析与展示 北京理工大学 嵩天的简要学习笔记.

import pandas as pd

基本操作

d=pd.Series(range(20))#创造series
d.cumsum()#计算前n项和

基于两个数据类型

  • Series
  • DataFrame
    的四个操作
  • 基本操作
  • 运算操作
  • 特征类操作
  • 关联类操作
    对比NumPy和Pandas
    |NumPy|Pandas|
    |:|:|
    |基础数据类型|扩展数据类型|
    |关注数据的结构表达|关注数据的应用表达|
    |维度:数据间关系|数据和索引之间关系|

Series
由一组数据机器相关联的数据索引组成

d=pd.Series(range(20))#传入一个列表创造series,pandas会为其自动创造索引
#或者传第二个参数--一个列表给参数index,这样可以自助定义索引

Series可以通过以下类型创建

  • Python列表
  • index和列表元素一致
  • 标量值
  • index表示其尺寸
  • Python字典 {key:value,...}
  • 可以传入index对参数顺序进行规范
  • ndarray
  • n=pd.Series(np.arange(5))
  • 其他函数
  • 如range()

Series类型的基本操作

 b=pd.Series([9,8,7,6],['a','b','c','d'])
 b.index
 b.values
 b['b']
 b[1]
 #自动索引和自定义索引并存,但是不能混用不然自动产生的index会NaN
 #可以用ndarray的操作方法里的ndarray进行切片
 #如果切片了好几个键值对会默认生成新Series然而切片一个就只会直接访问 
 'c' in b
 b.get('f',100)
 
# Series+Series
#索引不同的不运算(NaN)索引相同的进行运算
b.name#对象的名字
b.index.name#索引的名字

#Series随时修改,立刻生效

DataFrame的本质是多列数据共用一列索引,纵向的column axis=1,横向的index axis=0;常用于二维数据
创建DataFrame
DataFrame类型的基本操作

  • 二维ndarray
  • 一维ndarray\列表\字典\元组\Series字典
  • Series
  • 其他DataFrame
d = pd.DataFrame(np.arange(10).reshape(2,5))
dt = {'one':pd.Series([1,2,3],index={'a','b','c'}),'two':pd.Series([9,8,7,6],index=['a','b','c','d'])}
d=pd.DataFrame(dt)
dp.DataFrame(dt,index=[],columns=[])
#调整dt的行列
d.columns
d.values
d.index
d.ix['']#生成一行新的对象
d[][]#支持联合索引的二位带标签数组
d.reindex()#传列表参数给index或者column参数
d.columns.delete()
d.index.insert()

pandas库的数据类型运算

  • 算数运算法则
  • 根据行列索引补齐之后运算,默认产生浮点数
  • 不起的时候填nan
  • 高低维之间采用广播运算
  • 四则运算可以采用方法运算
  • .add() .sub() .mul() .div()
  • fill_value参数可以替代nan赋初值
  • 可以考虑布尔型对象

摘要的过程:有损地利用数据对数据进行处理.
数据基本处理
数据的排序

a.sort_index(axis=0,ascending=True)#在指定轴上根据索引进行排序,默认升序 
 #也可以对纵轴进行排序
 Series.sort_values(axis=0,ascending=True)
 DataFrame.sort_values(by,axis=0,ascending=True)#by表示排序轴的索引 NaN项被放在末尾

基本统计分析方法

方法 说明
.sum() .count() 总和\有效值数量
.mean() .median() 算术平均数\中位数
.var() .std() 方差\标准差
.min() .max() 最小\最大值
argmin() argmax() 计算极值所在位置的索引位置(自动索引)Series Only
.idxmin() .idxmax() 计算极值所在位置的索引(自定义索引)Series Only
.describe() 生成0轴的所有元素的所有初步统计结果,由于生成的是Series类型,因此可以用方括号索引

累计统计分析方法

方法 说明
cumsum(n) 计算前n个数字的和
cumprod(n) 计算前n个数的积
cummax(n) 计算前n个数字的最大值
cummin(n) 计算前n个数字的最小值
.rolling(w) 获取w为宽的窗口.后面接基本统计分析方法可以依次对相邻的w个元素进行操作

相关分析方法

方法 说明
.cov() 计算协方差矩阵
.corr() 计算相关系数矩阵,Pearson\Spearman\Kendall等相关系数

Pandas官方网站

Python数据分析与展示 北京理工大学 嵩天

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容