當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。