本文簡要介紹 python 語言中 scipy.stats.multivariate_hypergeom
的用法。
用法:
scipy.stats.multivariate_hypergeom = <scipy.stats._multivariate.multivariate_hypergeom_gen object>#
多元超幾何隨機變量。
- m: array_like
總體中每種類型對象的數量。也就是說, 是類型為 的對象的數量。
- n: array_like
從總體中抽取的樣本數。
- seed: {無,int,np.random.RandomState,np.random.Generator},可選
用於繪製隨機變量。如果種子是None, 這RandomState使用單例。如果種子是一個 int,一個新的
RandomState
使用實例,用種子播種。如果種子已經是一個RandomState
或者Generator
實例,然後使用該對象。默認為None.
參數 ::
注意:
m必須是正整數數組。如果分位數
包含超出範圍的值 其中 是類型對象的數量 在總體中,或者如果參數彼此不一致(例如x.sum() != n
),方法返回適當的值(例如0
為了pmf
)。如果m或者n包含負值,結果將包含nan
那裏。multivariate_hypergeom
的概率質量函數為其中 是類型為 的對象的數量, 是總體中的對象總數(所有 的總和),而 是要采集的樣本的大小從人口。
參考:
[2]Thomas J. Sargent 和 John Stachurski,2020,多元超幾何分布https://python.quantecon.org/_downloads/pdf/multi_hyper.pdf
例子:
為了評估多元超幾何分布的概率質量函數,具有大小為 和 的二分總體,在大小為 的樣本中,具有第一類型的 對象和 對象第二種,使用:
>>> from scipy.stats import multivariate_hypergeom >>> multivariate_hypergeom.pmf(x=[8, 4], m=[10, 20], n=12) 0.0025207176631464523
當群體中僅存在兩種類型(好和壞)的對象時,
multivariate_hypergeom
分布與相應的hypergeom
分布相同(盡管有微小的數值差異),如上例所示。考慮另一個與超幾何分布進行比較的例子:>>> from scipy.stats import hypergeom >>> multivariate_hypergeom.pmf(x=[3, 1], m=[10, 5], n=4) 0.4395604395604395 >>> hypergeom.pmf(k=3, M=15, n=4, N=10) 0.43956043956044005
函數
pmf
、logpmf
、mean
、var
、cov
和rvs
支持廣播,約定向量參數(x
、m
和n
) 是解釋為好像沿最後一個軸的每一行都是單個對象。例如,我們可以將前兩次調用multivariate_hypergeom
組合為>>> multivariate_hypergeom.pmf(x=[[8, 4], [3, 1]], m=[[10, 20], [10, 5]], ... n=[12, 4]) array([0.00252072, 0.43956044])
此廣播也適用於
cov
,其中輸出對象是大小為m.shape[-1]
的方陣。例如:>>> multivariate_hypergeom.cov(m=[[7, 9], [10, 15]], n=[8, 12]) array([[[ 1.05, -1.05], [-1.05, 1.05]], [[ 1.56, -1.56], [-1.56, 1.56]]])
也就是說,
result[0]
等於multivariate_hypergeom.cov(m=[7, 9], n=8)
並且result[1]
等於multivariate_hypergeom.cov(m=[10, 15], n=12)
。或者,可以調用對象(作為函數)來固定 m 和 n 參數,返回 “frozen” 多元超幾何隨機變量。
>>> rv = multivariate_hypergeom(m=[10, 20], n=12) >>> rv.pmf(x=[8, 4]) 0.0025207176631464523
相關用法
- Python SciPy stats.multivariate_normal用法及代碼示例
- Python SciPy stats.multivariate_t用法及代碼示例
- Python SciPy stats.multiscale_graphcorr用法及代碼示例
- Python SciPy stats.multinomial用法及代碼示例
- Python SciPy stats.median_abs_deviation用法及代碼示例
- Python SciPy stats.mode用法及代碼示例
- Python SciPy stats.monte_carlo_test用法及代碼示例
- Python SciPy stats.matrix_normal用法及代碼示例
- Python SciPy stats.mood用法及代碼示例
- Python SciPy stats.moyal用法及代碼示例
- Python SciPy stats.maxwell用法及代碼示例
- Python SciPy stats.mvsdist用法及代碼示例
- Python SciPy stats.moment用法及代碼示例
- Python SciPy stats.mielke用法及代碼示例
- Python SciPy stats.median_absolute_deviation用法及代碼示例
- Python SciPy stats.median_test用法及代碼示例
- Python SciPy stats.mannwhitneyu用法及代碼示例
- Python SciPy stats.anderson用法及代碼示例
- Python SciPy stats.iqr用法及代碼示例
- Python SciPy stats.genpareto用法及代碼示例
- Python SciPy stats.skewnorm用法及代碼示例
- Python SciPy stats.cosine用法及代碼示例
- Python SciPy stats.norminvgauss用法及代碼示例
- Python SciPy stats.directional_stats用法及代碼示例
- Python SciPy stats.invwishart用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.stats.multivariate_hypergeom。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。