当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NumPy var方法用法及代码示例


NumPy 的 var(~) 方法计算输入数组中值的方差。使用以下公式计算方差:

在哪里:

  • 是给定数组的大小(即样本大小)

  • 是 Numpy 数组中第 索引的值

  • 是样本平均值

注意

var(~) 方法还可以计算方差的无偏估计。我们通过在参数中设置 ddof=1 来实现这一点,我们将在后面的示例中看到。

参数

1. a | array-like

要对其执行该方法的数组。

2. axis | inttuple | optional

我们计算方差的轴。对于二维数组,允许的值如下:

意义

0

方差将按列计算

1

方差将按行计算

None

将在展平数组上计算方差

默认情况下,axis=None

3. dtype | stringtype | optional

用于计算方差的类型。如果输入数组的类型为 int ,则将使用 float32 。如果输入数组是其他数值类型,则将使用其类型。

4. ddof | int | optional

自由度δ。这可以用来修改前面的分母:

默认情况下,ddof=0

返回值

如果 axis=None ,则返回表示数组中所有值的方差的单个 float。否则,返回一个 Numpy 数组。

例子

一维数组的方差

np.var([1,2,3,4])



1.25

计算样本方差

要计算样本方差,请设置 ddof=1

np.var([1,2,3,4], ddof=1)



1.6666666666666667

计算总体方差

要计算总体方差,请省略 ddof 参数或显式设置 ddof=0

np.var([1,2,3,4])   # By default, ddof=0



1.25

二维数组的方差

整个数组

如果不指定 axis 参数,Numpy 只会将您的 Numpy 数组视为扁平数组。

np.var([[1,2],[3,4]])



1.25

此代码与 np.var([1,2,3,4]) 基本相同。

按列

要按列计算方差,请在参数中指定axis=0

np.var([[1,4],[2,6], [3,8]], axis=0)



array([0.66666667, 2.66666667])

在这里,我们计算 [1,2,3](即第一列)和 [4,6,8](即第二列)的方差。

逐行

要按列计算方差,请在参数中指定axis=1

np.var([[1,4],[2,6], [3,8]], axis=1)



array([2.25, 4.  , 6.25])

在这里,我们计算三个方差:第一行(即 [1,4] )、第二行(即 [2,6] )和第三行(即 [3,8] )。

警告

有时数字类型 float32 可能不够准确,无法满足您的需求。如果您的应用程序需要更准确的数字,请在参数中设置dtype=np.float64。这将占用更多内存,但会提供更准确的结果。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | var method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。