scipy.stats.

describe#

scipy.stats.describe(a, axis=0, ddof=1, bias=True, nan_policy='propagate')[source]#

計算傳入陣列的幾個描述性統計量。

Parameters:
aarray_like

輸入資料。

axisint or None, optional

計算統計量的軸。預設值為 0。如果為 None,則計算整個陣列 a

ddofint, optional

自由度差值(僅適用於變異數)。預設值為 1。

biasbool, optional

如果為 False,則會校正偏度和峰度計算中的統計偏差。

nan_policy{‘propagate’, ‘raise’, ‘omit’}, optional

定義輸入包含 nan 時的處理方式。以下選項可用(預設值為 ‘propagate’)

  • ‘propagate’: 傳回 nan

  • ‘raise’: 拋出錯誤

  • ‘omit’: 執行計算時忽略 nan 值

Returns:
nobsint or ndarray of ints

觀察次數(沿 axis 的資料長度)。當 nan_policy 選擇 ‘omit’ 時,將分別計算每個軸切片的長度。

minmax: tuple of ndarrays or floats

沿給定軸的 a 最小值和最大值。

meanndarray or float

沿給定軸的 a 算術平均數。

variancendarray or float

沿給定軸的 a 無偏變異數;分母是觀察次數減一。

skewnessndarray or float

沿給定軸的 a 偏度,基於動差計算,其分母等於觀察次數,即不進行自由度校正。

kurtosisndarray or float

沿給定軸的 a 峰度 (Fisher)。峰度已標準化,因此常態分佈的峰度為零。未使用自由度。

Raises:
ValueError

如果 a 的大小為 0。

See also

skew, kurtosis

Examples

>>> import numpy as np
>>> from scipy import stats
>>> a = np.arange(10)
>>> stats.describe(a)
DescribeResult(nobs=10, minmax=(0, 9), mean=4.5,
               variance=9.166666666666666, skewness=0.0,
               kurtosis=-1.2242424242424244)
>>> b = [[1, 2], [3, 4]]
>>> stats.describe(b)
DescribeResult(nobs=2, minmax=(array([1, 2]), array([3, 4])),
               mean=array([2., 3.]), variance=array([2., 2.]),
               skewness=array([0., 0.]), kurtosis=array([-2., -2.]))