在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ Scipy統(tǒng)計(jì)函數(shù)
Scipy積分
Scipy優(yōu)化算法
Scipy特殊包
Scipy簇聚
Scipy ODR
Scipy Ndimage
Scipy插值
Scipy CSGraph
Scipy輸入和輸出
Scipy開發(fā)環(huán)境安裝
Scipy簡介
Scipy常量
Scipy統(tǒng)計(jì)函數(shù)
Scipy Linalg
Scipy空間
Scipy FFTpack
Scipy基本功能
Scipy教程

Scipy統(tǒng)計(jì)函數(shù)

所有的統(tǒng)計(jì)函數(shù)都位于子包scipy.stats中,并且可以使用info(stats)函數(shù)獲得這些函數(shù)的完整列表。隨機(jī)變量列表也可以從stats子包的docstring中獲得。 該模塊包含大量的概率分布以及不斷增長的統(tǒng)計(jì)函數(shù)庫。

每個單變量分布都有其自己的子類,如下表所述 -

編號 描述
1 rv_continuous 用于子類化的通用連續(xù)隨機(jī)變量類
2 rv_discrete 用于子類化的通用離散隨機(jī)變量類
3 rv_histogram 生成由直方圖給出的分布

正態(tài)連續(xù)隨機(jī)變量

隨機(jī)變量X可以取任何值的概率分布是連續(xù)的隨機(jī)變量。 位置(loc)關(guān)鍵字指定平均值。 比例(scale)關(guān)鍵字指定標(biāo)準(zhǔn)偏差。

作為rv_continuous類的一個實(shí)例,規(guī)范對象從中繼承了一系列泛型方法,并通過特定于此特定分發(fā)的細(xì)節(jié)完成它們。

要計(jì)算多個點(diǎn)的CDF,可以傳遞一個列表或一個NumPy數(shù)組。 看看下面的一個例子。

from scipy.stats import norm
import numpy as np
cdfarr = norm.cdf(np.array([1,-1., 0, 1, 3, 4, -2, 6]))
print(cdfarr)

執(zhí)行上面示例代碼,得到以下結(jié)果 -

array([ 0.84134475, 0.15865525, 0.5 , 0.84134475, 0.9986501 ,
0.99996833, 0.02275013, 1. ])

要查找分布的中位數(shù),可以使用百分點(diǎn)函數(shù)(PPF),它是CDF的倒數(shù)。 可通過使用下面的例子來理解。

from scipy.stats import norm
ppfvar = norm.ppf(0.5)
print(ppfvar)

執(zhí)行上面示例代碼,得到以下結(jié)果 -

0.0

要生成隨機(jī)變量序列,應(yīng)該使用size參數(shù),如下例所示。

from scipy.stats import norm
rvsvar = norm.rvs(size = 5)
print(rvsvar)

執(zhí)行上面示例代碼,得到以下結(jié)果 -

[-0.25993892  1.46653546 -0.53932984 -1.22796601  0.06542478]

上述輸出不可重現(xiàn)。 要生成相同的隨機(jī)數(shù),請使用seed()函數(shù)。

均勻分布

使用統(tǒng)一函數(shù)可以生成均勻分布。 參考下面的一個例子。

from scipy.stats import uniform
cvar = uniform.cdf([0, 1, 2, 3, 4, 5], loc = 1, scale = 4)
print(cvar)

上述程序?qū)⑸梢韵螺敵?-

array([ 0. , 0. , 0.25, 0.5 , 0.75, 1. ])

構(gòu)建離散分布

生成隨機(jī)樣本,并將觀察到的頻率與概率進(jìn)行比較。

二項(xiàng)分布
作為rv_discrete類的一個實(shí)例,binom對象從它繼承了一個泛型方法的集合,并通過特定于這個特定分布的細(xì)節(jié)完成它們。 參考下面的例子。

from scipy.stats import uniform
cvar = uniform.cdf([0, 1, 2, 3, 4, 5], loc = 1, scale = 4)

print(cvar)

上述程序?qū)⑸梢韵螺敵?-

array([ 0. , 0. , 0.25, 0.5 , 0.75, 1. ])

描述性統(tǒng)計(jì)

Min,Max,MeanVariance等基本統(tǒng)計(jì)數(shù)據(jù)將NumPy數(shù)組作為輸入并返回相應(yīng)的結(jié)果。 下表描述了scipy.stats包中的一些基本統(tǒng)計(jì)函數(shù)。

編號 函數(shù) 描述
1 describe() 計(jì)算傳遞數(shù)組的幾個描述性統(tǒng)計(jì)信息
2 gmean() 計(jì)算沿指定軸的幾何平均值
3 hmean() 計(jì)算沿指定軸的諧波平均值
4 kurtosis() 計(jì)算峰度
5 mode() 返回模態(tài)值
6 skew() 測試數(shù)據(jù)的偏斜度
7 f_oneway() 執(zhí)行單向方差分析
8 iqr() 計(jì)算沿指定軸的數(shù)據(jù)的四分位數(shù)范圍
9 zscore() 計(jì)算樣本中每個值相對于樣本均值和標(biāo)準(zhǔn)偏差的z
10 sem() 計(jì)算輸入數(shù)組中值的標(biāo)準(zhǔn)誤差(或測量標(biāo)準(zhǔn)誤差)

其中幾個函數(shù)在scipy.stats.mstats中有一個類似的版本,它們用于掩碼數(shù)組。 參考下面給出的例子來理解這一點(diǎn)。

from scipy import stats
import numpy as np
x = np.array([1,2,3,4,5,6,7,8,9])
print (x.max(),x.min(),x.mean(),x.var())

上述程序?qū)⑸梢韵螺敵?-

(9, 1, 5.0, 6.666666666666667)

T-檢驗(yàn)

下面了解T檢驗(yàn)在SciPy中是如何有用的。

ttest_1samp

計(jì)算一組分?jǐn)?shù)平均值的T檢驗(yàn)。 這是對零假設(shè)的雙面檢驗(yàn),即獨(dú)立觀測值'a'樣本的期望值(平均值)等于給定總體均值popmean,考慮下面的例子。

from scipy import stats
rvs = stats.norm.rvs(loc = 5, scale = 10, size = (50,2))
sta = stats.ttest_1samp(rvs,5.0)
print(sta)

上述程序?qū)⑸梢韵螺敵?-

Ttest_1sampResult(statistic = array([-1.40184894, 2.70158009]),
pvalue = array([ 0.16726344, 0.00945234]))

比較兩個樣本

在下面的例子中,有兩個樣本可以來自相同或不同的分布,想要測試這些樣本是否具有相同的統(tǒng)計(jì)特性。

ttest_ind - 計(jì)算兩個獨(dú)立樣本得分的T檢驗(yàn)。 對于兩個獨(dú)立樣本具有相同平均(預(yù)期)值的零假設(shè),這是一個雙側(cè)檢驗(yàn)。 該測試假設(shè)人口默認(rèn)具有相同的差異。

如果觀察到來自相同或不同人群的兩個獨(dú)立樣本,可以使用這個測試。參考下面的例子。

from scipy import stats
rvs1 = stats.norm.rvs(loc = 5,scale = 10,size = 500)
rvs2 = stats.norm.rvs(loc = 5,scale = 10,size = 500)
print (stats.ttest_ind(rvs1,rvs2))

執(zhí)行上面示例代碼,得到以下結(jié)果 -

Ttest_indResult(statistic = -0.67406312233650278, pvalue = 0.50042727502272966)

可以使用相同長度的新數(shù)組進(jìn)行測試,但具有不同的含義。 在loc中使用不同的值并測試相同的值。


上一篇:Scipy簇聚下一篇:Scipy ODR