文章目录

  • 1. Numpy 计算均值、方差、标准差
  • 2. Pandas 计算均值、方差、标准差

Python 中的 numpy 包 和 pandas 包都能够计算均值、方差等,本文总结一下它们的用法。

1. Numpy 计算均值、方差、标准差

一般的均值可以用 numpy 中的 mean 方法求得:

>>> import numpy as np
>>> a = [5, 6, 16, 9]
>>> np.mean(a)
9.0

numpy 中的 average 方法不仅能求得简单平均数,也可以求出加权平均数。average 里面可以跟一个 weights 参数,里面是一个权数的数组,例如:

>>> np.average(a)
>>> 9.0
>>> np.average(a, weights = [1, 2, 1, 1])
>>> 8.4

计算方差时,可以利用 numpy 中的 var 函数,默认是总体方差(计算时除以样本数 N),若需要得到样本方差(计算时除以 N - 1),需要跟参数 ddo f= 1,例如

>>> import pnumpy as np
>>> a = [5, 6, 16, 9]
>>> np.var(a) # 计算总体方差
18.5>>> np.var(a, ddof = 1) # 计算样本方差
24.666666666666668>>> b = [[4, 5], [6, 7]]
>>> b
[[4, 5], [6, 7]]>>> np.var(b) # 计算矩阵所有元素的方差
1.25>>> np.var(b, axis = 0) # 计算矩阵每一列的方差
array([1., 1.])>>> np.var(b, axis = 1) # 计算矩阵每一行的方差
array([0.25, 0.25])

计算标准差时,可以利用 numpy 中的 std 函数,使用方法与 var 函数很像,默认是总体标准差,若需要得到样本标准差,需要跟参数 ddof =1,

>>> import pnumpy as np
>>> a = [5, 6, 16, 9]
>>> np.std(a) # 计算总体标准差
4.301162633521313>>> np.std(a, ddof = 1 ) # 计算样本标准差
4.96655480858378>>> np.std(b) # 计算矩阵所有元素的标准差
1.118033988749895>>> np.std(b, axis = 0) # 计算矩阵每一列的标准差
array([1., 1.])>>> np.std(b, axis = 1) # 计算矩阵每一列的标准差
array([0.5, 0.5])

2. Pandas 计算均值、方差、标准差

对于 pandas ,也可以用里面的 mean 函数可以求得所有行或所有列的平均数,例如:

>>> import pandas as pd
>>> df = pd.DataFrame(np.array([[85, 68, 90], [82, 63, 88], [84, 90, 78]]), columns=['统计学', '高数', '英语'], index=['张三', '李四', '王五'])
>>> df
统计学  高数  英语
张三   85  68  90
李四   82  63  88
王五   84  90  78>>> df.mean() # 显示每一列的平均数统计学    83.666667
高数     73.666667
英语     85.333333
dtype: float64>>> df.mean(axis = 1) # 显示每一行的平均数
张三    81.000000
李四    77.666667
王五    84.000000
dtype: float64

若要得到某一行或某一列的平均值,则可以使用 iloc 选取改行或该列数据,后面跟 mean 函数就能得到,例如:

>>> df统计学  高数  英语
张三   85  68  90
李四   82  63  88
王五   84  90  78>>> df.iloc[0, :].mean()  # 得到第 1 行的平均值
81.0>>> df.iloc[:, 2].mean() # 得到第 3 列的平均值
85.33333333333333

pandas 中的 var 函数可以得到样本方差(注意不是总体方差),std 函数可以得到样本标准差,若要得到某一行或某一列的方差,则也可用 iloc 选取某行或某列,后面再跟 var 函数或 std 函数即可,例如:

>>> df.var() # 显示每一列的方差
统计学      2.333333
高数     206.333333
英语      41.333333
dtype: float64>>> df.var(axis = 1) # 显示每一行的方差
张三    133.000000
李四    170.333333
王五     36.000000
dtype: float64>>> df.std() # 显示每一列的标准差
统计学     1.527525
高数     14.364308
英语      6.429101
dtype: float64>>> df.std(axis = 1) # 显示每一行的标准差
张三    11.532563
李四    13.051181
王五     6.000000
dtype: float64>>> df.iloc[0, :].std() # 显示第 1 行的标准差
11.532562594670797>>> df.iloc[:, 2].std() # 显示第 3 列的标准差
6.429100507328636

python 计算均值、方差、标准差 Numpy,Pandas相关推荐

  1. python计算均值方差模型_如何从Python中的FIGARCH模型中得到条件均值和标准差?...

    大家好,谢谢收看我的节目.你知道吗 此链接指定参数:class arch.univariate.FIGARCH(p=1, q=1, power=2.0, truncation=1000) 参数: p( ...

  2. Python 数据处理与分析(六) 设计一个高回报的投资组合(投资回报和风险分析)任务 5:使用Python实现均值-方差组合模型

    目录 1. 学习目标 2. 操作讲解 3.作业结果 1..作业1 2.作业2 1. 学习目标 使用 Python 实现不同的投资配比 使用 Python 实现均值-方差模型 2. 操作讲解 通过上一个 ...

  3. MATLAB的var与std函数 与 均值,方差,标准差,均方差,均分误差

    从定义上来讲,(样本)均值,方差,标准差,均方差,均分误差分别为: 均值: 方差: 标准差: 均方差=标准差 均方误差: matlab中的var函数和std函数用来计算方差 var函数计算使用的公式为 ...

  4. linux 计算标准差,shell计算均值和标准差的工具:datamash

    前言 shell下经常需要处理数据,需要计算均值和标准差,最近在分析EXT4的r_await的分布情况,需要计算下在一定的读写模式下,块设备的读延迟分布. 这已不是第一次有类似的需求了,每次都要awk ...

  5. 【问题记录】均值-方差-标准差 计算器(已解决)

    问题记录 在Freecodecamp上做[均值-方差-标准差 计算器]这个项目时,测试时出现如下报错:unsupported operand type(s) for -: 'dict' and 'di ...

  6. R语言用户自定义函数的语法结构、编写自定义统计值计算函数(使用ifelse结构计算均值和标准差等)、编写自定义日期格式化(format)函数(switch函数使用不同分枝格式化日期数据)、应用自定函数

    R语言用户自定义函数的语法结构.编写自定义统计值计算函数(使用ifelse结构计算均值和标准差等).编写自定义日期格式化(format)函数(switch函数使用不同分枝格式化日期数据).应用自定函数 ...

  7. python方差的计算公式_python计算均值方差

    原博文 2014-06-07 14:13 − 用Python求均值与方差,可以自己写,也可以借助于numpy,不过到底哪个快一点呢? 我做了个实验,首先生成9百万个样本: ```python nlis ...

  8. python算方差_python计算均值方差

    用Python求均值与方差,可以自己写,也可以借助于numpy,不过到底哪个快一点呢? 我做了个实验,首先生成9百万个样本: nlist=range(0,9000000) nlist=[float(i ...

  9. python计算图解_图解NumPy,看这一篇就够了!

    晓查 编译整理 量子位 报道 | 公众号 QbitAI NumPy是Python的最重要的扩展程序库之一,也是入门机器学习编程的必备工具.然而对初学者来说,NumPy的大量运算方法非常难记. 最近,国 ...

  10. 数据分析之python数据计算方法汇总(math|numpy|pandas)

    数据分析之python数据计算方法上篇(math|numpy)_Backup and share的博客-CSDN博客 本文重点介绍pandas,math和numpy参见上篇> 目录 一.简介与创 ...

最新文章

  1. Python爬虫之reuqests实现简单网页采集--网页采集教程
  2. 解决Eclipse狂吃内存的解决方法(转)
  3. LeetCode 410——分割数组的最大值
  4. adf开发_ADF:动态视图对象
  5. Net框架下-ORM框架LLBLGen的简介(转载)
  6. vue-resource插件使用
  7. 敏捷开发绩效管理之六:敏捷开发生产率(中)(功能点分析,FPA,简化的功能点)...
  8. expect实现自动通过堡垒机登陆
  9. C语言基础犄角旮旯的知识之数据类型
  10. 弹出登录框 您未被授权查看该页 的解决办法
  11. MLAPP————第五章 贝叶斯统计
  12. 外卖联盟高级接口 - 美团联盟接口 美团外卖CPS+CPA推广活动推广API接口
  13. POJ 1273 Dinic
  14. jqgrid 加载mysql数据_利用jqgrid+加mysql的text类型实现简单自定义数据模型
  15. 新东方托福词汇(List 36 ~ List 40)
  16. react-native map函数遍历数据及其布局
  17. java 调整图片分辨率_java 改变图片的分辨率。。。可以吗?
  18. 【详细搭建教程】在线客服系统源码3.0防黑版,即时聊天通讯源码 带机器人,防注入 无后门
  19. deepin终端编译c程序_Deepin系统安装软件总结:通过商店、二进制包、deb包、终端命令安装...
  20. 股票代码是什么意思?

热门文章

  1. 祝贺父亲节快乐的python代码_祝福父亲节快乐的句子50句
  2. 华为首度公开披露员工薪酬:去年平均年薪近28万
  3. 微信公众号——分享给朋友/分享至朋友圈(Vue)
  4. 探索性因子分析和验证性因子分析有什么区别?
  5. 图层蒙版和图层剪贴路径_PS蒙版使用教程、快速蒙版、剪切蒙版、矢量蒙版、图层蒙版要点...
  6. 肿瘤全外显子--记录
  7. 用js两张图片合并成一张图片
  8. 动态ip和静态ip的区别
  9. android 服务自动运行怎么办,Android服务开机自动运行
  10. origin数据平滑_Origin平滑曲线怎么设置?平滑曲线处理方法讲解