NumPy 的 var(~)
方法計算輸入數組中值的方差。使用以下公式計算方差:
在哪裏:
-
是給定數組的大小(即樣本大小)
-
是 Numpy 數組中第 索引的值
-
是樣本平均值
注意
var(~)
方法還可以計算方差的無偏估計。我們通過在參數中設置 ddof=1
來實現這一點,我們將在後麵的示例中看到。
參數
1. a
| array-like
要對其執行該方法的數組。
2. axis
| int
或 tuple
| optional
我們計算方差的軸。對於二維數組,允許的值如下:
軸 |
意義 |
---|---|
0 |
方差將按列計算 |
1 |
方差將按行計算 |
None |
將在展平數組上計算方差 |
默認情況下,axis=None
。
3. dtype
| string
或 type
| 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
。這將占用更多內存,但會提供更準確的結果。
相關用法
- Python statistics variance()用法及代碼示例
- Python vars()用法及代碼示例
- Python Tableau views.get用法及代碼示例
- Python Tableau views.populate_csv用法及代碼示例
- Python venv.EnvBuilder.create用法及代碼示例
- Python Tableau views.get_by_id用法及代碼示例
- Python Tableau views.populate_pdf用法及代碼示例
- Python Tableau views.populate_preview_image用法及代碼示例
- Python Tableau views.populate_image用法及代碼示例
- Python NumPy vstack方法用法及代碼示例
- Python NumPy vsplit方法用法及代碼示例
- Python NumPy view方法用法及代碼示例
- Python cudf.core.column.string.StringMethods.is_vowel用法及代碼示例
- Python NumPy fliplr方法用法及代碼示例
- Python torch.distributed.rpc.rpc_async用法及代碼示例
- Python torch.nn.InstanceNorm3d用法及代碼示例
- Python sklearn.cluster.MiniBatchKMeans用法及代碼示例
- Python pandas.arrays.IntervalArray.is_empty用法及代碼示例
- Python tf.compat.v1.distributions.Multinomial.stddev用法及代碼示例
- Python numpy.less()用法及代碼示例
- Python Matplotlib.figure.Figure.add_gridspec()用法及代碼示例
- Python tf.compat.v1.distribute.MirroredStrategy.experimental_distribute_dataset用法及代碼示例
- Python Django File.save用法及代碼示例
- Python NumPy squeeze方法用法及代碼示例
- Python Sympy Permutation.list()用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | var method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。