Python如何使用sd()函数求数据的标准差

Python016

Python如何使用sd()函数求数据的标准差,第1张

python的求

标准差

的函数是std,是numpy库的成员,

如果非要

用sd函数求标准差,也不是不行(from

numpy

import

std

as

sd)。其参数是所需求标准差的矩阵或列表,

返回值

即标准差。示范如下:

import

numpy

as

np

from

numpy

import

std

as

sd

print([1,

2,3],"的标准差是)

print(sd([1,2,3]))

首先,普及一下pandas与numpy的区别:

pandas操作的数据集是Series,本质上是列表与字典的混合,常用的数据形式为DataFrame;

numpy操作的数据集是数组或矩阵。

1、对数组求均值、方差、标准差

2、对矩阵求标准差

注意:在求标准差时需要注意几个问题:

1、在统计学中,标准差分为两种:

(1)总体标准差:标准差公式根号内除以n,是有偏的。

(2)样本标准差:标准差公式根号内除以n-1,是无偏的。

2、pandas与numpy在计算标准差时的区别

(1)numpy

         在numpy中计算标准差时,括号内要指定ddof的值,ddof表示自由度,当ddof=0时计的是总体标准差;当ddof=1时计算的是样本标准差,当不为ddof设置值时,其默认为总体标准差。

(2)pandas

         在使用pandas计算标准差时,其与numpy的默认情况是相反的,在默认情况下,pandas计算的标准差为样本标准差。

##注意:最左边每个=表示一个空格

def fd(nums):

====n=len(nums)

====ave=sum(nums)/n

====return (sum(map(lambda e:(e-ave)*(e-ave),nums))/n)**0.5