pandas中std和numpy的np.std区别及说明

 更新时间:2023年08月15日 14:54:52   作者:AML杰  
这篇文章主要介绍了pandas中std和numpy的np.std区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

pandas中std和numpy的std区别

原理

计算标准差时,需要注意numpy中的std和pandas的std在计算标准差时,默认的计算结果会存在不一致的问题。

原因在于默认情况下,

  • numpy计算的为总体标准偏差,ddof=0;一般在拥有所有数据的情况下,计算所有数据的标准差时使用,即最终除以n,而非n-1;
  • pandas计算的为样本标准偏差,ddof=1;一般在只有部分数据,但需要求得总体的标准差时使用,当只有部分数据时,根据统计规律,除以n时计算的标准差往往偏小,因此需要除以n-1,即n-ddof;

实际使用时需要注意,并且根据数据情况选择合适的函数,在数据量较大时,推荐使用numpy进行计算。

速度区别

速度由快到慢依次:

s1 = pd.Series([1,2,3,4,5])
#速度由快至慢
np.std(s1.values) > s1.std(ddof=0) > np.std(s1)

使用numpy和pandas计算平均值、方差、标准差

numpy和pandas都可以实现计算平均值、方差、标准差。

但numpy默认的是总体方差,pandas默认的样本方差,即分母是n-1,是总体的无偏估计。

numpy的语法

# numpy计算方法
import numpy as np
x = [1,2,3,4,5]
# mean
mean = np.mean(x)
# variation
var = np.var(x)
# stander var
std = np.std(x,ddof=1)  #ddof=1 表示样本方差分母是n-1,无偏估计  doof=0 表示总体标准差

pandas的语法

#pandas计算方法
#axis = 0表示跨行,axis=1表示跨列
import pandas as pd
data_dic = {'c1' : [1,2,3],
            'c2': [1,3,5]}
df = pd.DataFrame(data_dic)
#c1列的meam
mean = df['c1'].mean()
#or
mean = df.iloc[:,0].mean()
#c1列的var
var = df['c1'].var()    #计算的无偏样本方差
var = df['c1'].values.var()  #计算的是有偏的总体方差
#c1列的std
std = df['c1'].std()    
std = df['c1'].values.std()  

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • django之导入并执行自定义的函数模块图解

    django之导入并执行自定义的函数模块图解

    这篇文章主要介绍了django之导入并执行自定义的函数模块图解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Django后台管理系统的图文使用教学

    Django后台管理系统的图文使用教学

    在本篇文章里小编给大家整理的是一篇关于Django后台管理系统的图文使用教学内容,需要的朋友们参考下。
    2020-01-01
  • Python读取excel指定列生成指定sql脚本的方法

    Python读取excel指定列生成指定sql脚本的方法

    今天小编就为大家分享一篇Python读取excel指定列生成指定sql脚本的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • Python入门学习之字符串与比较运算符

    Python入门学习之字符串与比较运算符

    这篇文章主要介绍了Python入门学习之字符串与比较运算符,是Python语法中的基础知识,需要的朋友可以参考下
    2015-10-10
  • python中@Property属性使用方法

    python中@Property属性使用方法

    这篇文章主要介绍了python中@Property属性使用方法,在Python中,可以通过@property装饰器将一个方法转换为属性,从而实现用于计算的属性,下面文章围绕主题展开更多相关详情,感兴趣的小伙伴可以参考一下
    2022-06-06
  • python 中的pycrypto 算法加密

    python 中的pycrypto 算法加密

    这篇文章主要介绍了python 中的pycrypto 算法加密,文章基于python的相关资料展开对pycrypto 算法加密的详细介绍,需要的小伙伴可以参考一下
    2022-04-04
  • Python中集合类型(set)学习小结

    Python中集合类型(set)学习小结

    这篇文章主要介绍了Python中集合类型(set)学习小结,本文讲解了set的初始化、运算操作、基本方法等内容,需要的朋友可以参考下
    2015-01-01
  • 浅谈PySpark SQL 相关知识介绍

    浅谈PySpark SQL 相关知识介绍

    这篇文章主要介绍了浅谈PySpark SQL 相关知识介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • 如何在vscode中安装python库的方法步骤

    如何在vscode中安装python库的方法步骤

    这篇文章主要介绍了如何在vscode中安装python库的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python入门教程(七)Python数字类型

    Python入门教程(七)Python数字类型

    这篇文章主要介绍了Python入门教程(七)Python数字类型,Python是一门非常强大好用的语言,也有着易上手的特性,本文为入门教程,需要的朋友可以参考下
    2023-04-04

最新评论