Pandas统计分析

pandas数据的基本统计分析

和numpy的函数近似

dates = pd.date_range('',periods=10)
dates
df = pd.DataFrame(np.random.randn(10,4),index=dates,columns=['A','B','C','D'])
df df.describe() #快速统计结果
df.mean() # 按列求平均值
df.mean(1) # 按行求平均值

基本统计分析函数

  • .describe() 针对0轴(列)的统计汇总,计数/平均值/标准差/最小值/四分位数/最大值
  • .sum() 计算数据的总和,按0轴计算(各行计算),下同,要按列计算参数1
  • .count() 非NaN值数量
  • .mean() .median() .mode() 计算数据的算数平均值/算数中位数/众数
  • .var() .std() 计算数据的方差/标准差
  • .min() .max() 计算数据的最小值/最大值

只适用于series:

  • .argmin(),.argmax() 计算数据最大值/最小值所在位置的索引位置(自动索引,用她是因为很容易切片等操作)
  • .idxmin(),.idxmax() 计算数据最大值/最小值所在位置的索引(自定义索引)
a = pd.Series([9,8,7,6],index=['a','b','c','d'])
a
b = pd.DataFrame(np.arange(20).reshape(4,5),index=['c','a','d','b'])
b a.describe()
type(a.describe()) #series对象
a.describe()['count'] b.describe() #默认0轴运算
type(b.describe()) #dataframe对象 #返回横行数据,series
b.describe().loc['max']
b.describe().iloc[7] #返回一列值,这里第2列
b.describe()[2]
#b.describe()[2]
b.describe().loc[:,2]

数据的累计统计分析

  • 对序列的前1-n个数累计运算
  • 可减少for循环的使用

累计统计分析函数,适用于series和dataframe类型

  • .cumsum() 依次给出前1/2/.../n个数的和
  • .cumprod() 依次给出前1/2/.../n个数的积
  • .cummax() 依次给出前1/2/.../n个数的最大值
  • .cummin() 依次给出前1/2/.../n个数的最小值
b = pd.DataFrame(np.arange(20).reshape(4,5),index=['c','a','d','b'])
b b.cumsum() #列的累加和
b.cumprod() #列的累加积

滚动计算(窗口计算)函数

适用series/dataframe

  • .rolling(w).sum() 依次计算相邻w个元素的和
  • .rolling(w).mean() 依次计算相邻w个元素的算数平均值
  • .rolling(w).var() 依次计算相邻w个元素的方差
  • .rolling(w).std() 依次计算相邻w个元素的标准差
  • .rolling(w).min .max() 依次计算相邻w个元素的最小值/最大值
b.rolling(2).sum() #纵向列,以两个元素为单位,做求和运算
b.rolling(3).sum()

Pandas统计分析的更多相关文章

  1. 18-09-27 pandas 学习02

    如何系统的学习python 中有关数据分析和挖掘相关的库?什么是系统的学习?系统的学习就是一个先搭建只是框架体系,然后不断填充知识看,不断更新迭代的过程. Pandas,numpy,scipy,mat ...

  2. 常用统计分析python包开源学习代码 numpy pandas matplotlib

    常用统计分析python包开源学习代码 numpy pandas matplotlib 待办 https://github.com/zmzhouXJTU/Python-Data-Analysis

  3. Python数据分析之pandas学习

    Python中的pandas模块进行数据分析. 接下来pandas介绍中将学习到如下8块内容:1.数据结构简介:DataFrame和Series2.数据索引index3.利用pandas查询数据4.利 ...

  4. [原创博文] 用Python做统计分析 (Scipy.stats的文档)

    [转自] 用Python做统计分析 (Scipy.stats的文档) 对scipy.stats的详细介绍: 这个文档说了以下内容,对python如何做统计分析感兴趣的人可以看看,毕竟Python的库也 ...

  5. python 抓取金融数据,pandas进行数据分析并可视化系列 (一)

    终于盼来了不是前言部分的前言,相当于杂谈,算得上闲扯,我觉得很多东西都是在闲扯中感悟的,比如需求这东西,一个人只有跟自己沟通好了,总结出某些东西了,才能更好的和别人去聊,去说. 今天这篇写的是明白需求 ...

  6. 数据分析与展示——Pandas数据特征分析

    Pandas数据特征分析 数据的排序 将一组数据通过摘要(有损地提取数据特征的过程)的方式,可以获得基本统计(含排序).分布/累计统计.数据特征(相关性.周期性等).数据挖掘(形成知识). .sort ...

  7. python 数据分析--pandas

    接下来pandas介绍中将学习到如下8块内容:1.数据结构简介:DataFrame和Series2.数据索引index3.利用pandas查询数据4.利用pandas的DataFrames进行统计分析 ...

  8. 使用Pandas将多个数据表合一

    使用Pandas将多个数据表合一 将多张数据表合为一张表,便于统计分析,进行这一操作的前提为这多张数据表互相之间有关联信息,或者有相同的列. import pandas as pd unames = ...

  9. pandas用法之二

    1,函数应用 ①map() 将函数作用于一个Series的每一个函数(不能是DataFrame) 类似于Python的高阶函数map() 函数可以是Numpy中的通用函数,也可以是自定义函数 优点:代 ...

随机推荐

  1. 动态参数(*args,**kwargs),命名空间和作用域,global和nonlocal,函数的嵌套

    1. 动态参数 位置参数的动态参数: *args 关键字参数的动态参数 : **kwargs 顺序: 位置,*args,默认值,**kwargs 在形参上*聚合, **聚合 在实参上*打散, **打散 ...

  2. Java 时间类

    1.System 类 2.Date 类 3.SimpleDateFormate 类 4.Calendar 类 1.System 类 得到当前的时间值.System 类不能被实例化,需要通过它的静态方法 ...

  3. python学习笔记_week6_面向对象

    面向对象 介绍(特性(class.object--->封装.继承,多态)).--->世界万物,皆可分类:世界万物,皆可对象 只要是对象,就肯定属于某种品类:只要是对象,就肯定有属性 你是上 ...

  4. 中国大学mooc直播回放看这里哦http://www.icourse163.org/forum/1001974001/topic-1003372881.htm?sortType=1&pageIndex=1

    中国大学mooc直播回放看这里哦http://www.icourse163.org/forum/1001974001/topic-1003372881.htm?sortType=1&pageI ...

  5. PropertiesUtils

    package com.icil.elsa.subscribe.milestone.common.utils; import java.io.BufferedInputStream; import j ...

  6. Linux 用户、权限

    用户:uid  保存在 /etc/passwd 用户分类: 管理员 uid--0 普通用户 --系统用户 uid 1-499 --一般用户  uid 500-60000 组:gid  保存在/etc/ ...

  7. 浅析USB HID ReportDesc (HID报告描述符)

    在USB中,USB Host是通过各种描述符来识别识别设备的,一般在设备枚举的过程将会获取有设备描述符/配置描述符/接口描述符/端点描述符/字符串描述符等 现在我们来介绍一下HID ReportDes ...

  8. call 和 apply

    call和apply作用一样,都是为了转移this,区别在于传入参数的方式不同. this指当前方法所在的对象,如果方法的外面没有对象,则默认是window.由于闭包虽在调用的方法中,但是在创建的时候 ...

  9. pycharm 对数据库进行可视化操作

    https://blog.csdn.net/qq_24189933/article/details/75666243

  10. 用python实现一个简单的服务器

    打开命令行工具,输入: python3 -m http.server 8000(端口可以自己定) 通过访问:http://ip:8000/,就能给别人快速分享文件了.