




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。錯(cuò)誤!未定義書(shū)簽。Statistics (Statistics 介紹隨機(jī)變量獲得幫助通用方法位移與縮放形態(tài)參數(shù)凍結(jié)分布廣播離散分布的
2、特殊之處 分布擬合性能問(wèn)題與注意事項(xiàng)遺留問(wèn)題構(gòu)造具體的分布創(chuàng)建一個(gè)連續(xù)分布,繼承rv continuous類(lèi)繼承 rv_discrete 類(lèi)樣本分析描述統(tǒng)計(jì),T檢驗(yàn)和KS檢3處分布尾部正態(tài)分布的特殊檢驗(yàn) 比較兩個(gè)樣本均值對(duì)于兩個(gè)不同的樣本進(jìn)行的KS檢3會(huì) 核密度估計(jì)單元估計(jì)多元估計(jì)>>> print 'number of continuous distributions:', len (dist_continu)介紹在這個(gè)教程我們討論一部分模塊的特性。這里我們的意圖是提供給使用者一個(gè)關(guān)于這個(gè)包的實(shí)用性知 識(shí)。我們推薦reference manual來(lái)介紹更多的
3、細(xì)節(jié)。注意:這個(gè)文檔還在發(fā)展中。隨機(jī)變量有些通用的概率分布類(lèi)被圭寸裝在 continuous random variables 以及 discrete random variables 中。有80多個(gè)連續(xù)性隨機(jī)變量(RVs)以及10余個(gè)離散隨機(jī)變量已經(jīng)用這些類(lèi)建立。同樣,新的程序和 分布可以被用戶(hù)新建(如果你構(gòu)造了一個(gè),請(qǐng)?zhí)峁┧o我們幫助發(fā)展這個(gè)包)。所有統(tǒng)計(jì)函數(shù)被放在子包中,且有這些函數(shù)的一個(gè)幾乎完整的列表可以使用info(stats) 獲得。這個(gè)列表里的隨機(jī)變量也可以從 stats子包的docstring中獲得介紹。在接下來(lái)的討論中,我們著重于連續(xù)性隨機(jī)變量(RVs) o幾乎所有離散變量也
4、符合下面的討論,但是我們也要指出一些區(qū)別在“離散分布的特殊之處”中。獲得幫助所有分布可以使用help函數(shù)得到解釋。為獲得這些信息只需要使用像這樣的簡(jiǎn)單調(diào)用:>>>>>> from scipy import stats>>> from import norm>>> print作為例子,我們用這種方式找分布的上下界%s upper: %s %,>>>>>> print 'bounds of distribution lower:bounds of distribution lower
5、: -inf, upper: inf我們可以通過(guò)調(diào)用dir(norm)來(lái)獲得關(guān)于這個(gè)(正態(tài))分布的所有方法和屬性。應(yīng)該看到,一些方法 是私有方法盡管其并沒(méi)有以名稱(chēng)表示出來(lái)(比如它們前面沒(méi)有以下劃線開(kāi)頭),比如veccdf就只用于 內(nèi)部計(jì)算(試圖使用那些方法將引發(fā)警告,因?yàn)樗鼈兛赡軙?huì)在后續(xù)開(kāi)發(fā)中被移除)為了獲得真正的主要方法,我們列舉凍結(jié)分布的方法(我們將在下文解釋何謂“凍結(jié)分布”)>>>> >> rv = norm()> >> dir (rv) # reformatted'class ', 'delattr'
6、, ' dict', 'doc', 'getattribute','hash ', 'init ', 'module', 'new', 'reduce ', 'reduceex ','repr_ ', '_ setattr_ ', '_ str_ ', '_ weakref ', 'args', 'cdf', 'dist','entr
7、opy', 'isf', 'kwds', 'moment', 'pdf', 'pmf', 'ppf', 'rvs', 'sf', 'stats'最后,我們能通過(guò)內(nèi)省獲得所有的可用分布的信息。>>>> >> import warnings>>> ('ignore' , DeprecationWarning )> >> dist_continu = d for
8、d in dir (stats) if.isinstance (getattr (stats,d),> >> dist_discrete = d for d in dir (stats) if.isinstance (getattr (stats,d),len (dist_discrete)number of continuous distributions: 84>>> print 'number of discrete distributions: number of discrete distributions: 12通用方法rvs:隨機(jī)變量(
9、就是從這個(gè)分布中抽一些樣本)pdf:概率密度函數(shù)。cdf :累計(jì)分布函數(shù)sf :殘存函數(shù)(1-CDF)ppf:分位點(diǎn)函數(shù)(CDF的逆)isf :逆殘存函數(shù)(sf的逆)stats:返回均值,方差,(費(fèi)舍爾)偏態(tài),(費(fèi)舍爾)峰度 moment分布的非中心矩。讓我們使用一個(gè)標(biāo)準(zhǔn)的 RV作為例子o>>>>>> (0)為了計(jì)算在一個(gè)點(diǎn)上的cdf,我們可以傳遞一個(gè)列表或一個(gè)numpy數(shù)組>>>>>> (-1. , 0, 1)array( 0., 0.)>>> import numpy as np>>>
10、; (-1. , 0, 1)array( 0., 0.)相應(yīng)的,像pdf,cdf之類(lèi)的簡(jiǎn)單方法可以用矢量化其他實(shí)用的方法可以像這樣使用。>>>>>> (),(),()>>> (moments = "mv")(array, array)為了找到一個(gè)分布的中心,我們可以使用分位數(shù)函數(shù)ppf,它是cdf的逆>>>>>>為了產(chǎn)生一個(gè)隨機(jī)變量集合O>>>>>> (size =5)array(卜0., 1.,-0., ,-0.)不要認(rèn)為產(chǎn)生了五個(gè)變量>&g
11、t;>>>> (5)欲知其意,請(qǐng)看下一部分的內(nèi)容。位移與縮放所有連續(xù)分布可以操縱loc以及scale參數(shù)作為修正location 和scale的方式。作為例子,標(biāo)準(zhǔn)正態(tài)分布的location是均值而scale是標(biāo)準(zhǔn)差。>>>> >> (loc = 3, scale = 4, moments = "mv")(array, array)通常經(jīng)標(biāo)準(zhǔn)化的分布的隨機(jī)變量X可以通過(guò)變換(X-loc)/scale 獲得。它們的默認(rèn)值是loc=0以及scale=1.聰明的使用loc與scale可以幫助以靈活的方式調(diào)整標(biāo)準(zhǔn)分布達(dá)到所
12、想要的效果。為了進(jìn)一步說(shuō)明縮放的效果,下面給出期望為1/人指數(shù)分布的cdf oF(x)=1 - exp(-入 x)通過(guò)像上面那樣使用scale ,可以看到得到想要的期望值。>>>> >> from import expon> >> (scale =3.)均勻分布也是令人感興趣的:>>>> >> from import uniform>>> (0, 1, 2, 3, 4, 5, 10c= 1, scale = 4)array( 0. , 0. , , , , 1.)最后,聯(lián)系起我們?cè)谇懊娑?/p>
13、落中留下的(5)的問(wèn)題。事實(shí)上,像這樣調(diào)用一個(gè)分布,其第一個(gè)參數(shù),像之前的5,是把10c參數(shù)調(diào)到了 5,讓我們看:>>>> >> (5, size =500)在這里,為解釋最后一段的輸出:(5)產(chǎn)生了一個(gè)正態(tài)分布變量,其期望,即10c=5.我傾向于明確的使用1oc,sca1e 作為關(guān)鍵字而非像上面那樣利用參數(shù)的順序。因?yàn)檫@看上去有點(diǎn)令人困惑。我們?cè)谖覀兘忉尅皟鼋Y(jié) RV的主題之前澄清這一點(diǎn)。形態(tài)參數(shù)雖然一個(gè)一般的連續(xù)隨機(jī)變量可以通過(guò)賦予loc和scale參數(shù)確定,但一些分布還需要額外的形態(tài)參數(shù)。作為例子,看到這個(gè)伽馬分布,這是它的密度函數(shù)Y (x,a)=入(入
14、 x) a-1 F (a)e -入 x,要求一個(gè)形態(tài)參數(shù)a。注意到 人的設(shè)置可以通過(guò)設(shè)置scale關(guān)鍵字為1/人進(jìn)行。讓我們檢查伽馬分布的形態(tài)參數(shù)的名字的數(shù)量。(我們知道從上面知道其應(yīng)該為1)>>>> >> from import gamma>>>1>>>現(xiàn)在我們?cè)O(shè)置形態(tài)變量的值為1以變成指數(shù)分布。所以我們可以容易的比較是否得到了我們所期望的 結(jié)果。>>>>>> gamma(1, scale =2.). stats(moments ="'mv")(array,
15、 array)注意我們也可以以關(guān)鍵字的方式指定形態(tài)參數(shù):>>>>>> gamma(a=1, scale =2.). stats(moments ="mv")(array, array)凍結(jié)分布不斷地傳遞loc與scale關(guān)鍵字最終會(huì)讓人厭煩。而凍結(jié)RV勺概念被用來(lái)解決這個(gè)問(wèn)題。>>>>>> rv = gamma(1, scale =2.)通過(guò)使用rv,在任何情況下我們不再需要包含 scale與形態(tài)參數(shù)。顯然,分布可以被多種方式使用, 我們可以通過(guò)傳遞所有分布參數(shù)給對(duì)方法的每次調(diào)用(像我們之前做的那樣)或
16、者可以對(duì)一個(gè)分布對(duì)象凍結(jié)參數(shù)。讓我們看看是怎么回事:>>>>>> (),()這正是我們應(yīng)該得到的。廣播像pdf這樣的簡(jiǎn)單方法滿(mǎn)足numpy的廣播規(guī)則。作為例子,我們可以計(jì)算t分布的右尾分布的臨界值 對(duì)于不同的概率值以及自由度。>>>>>> ,10, 11)array( 1., 1., 2.,1., 1., 2.)這里,第一行是以10自由度的臨界值,而第二行是以11為自由度的臨界值。所以,廣播規(guī)則與下面調(diào) 用了兩次isf產(chǎn)生的結(jié)果相同。>>>>>> ,10)array( 1., 1., 2
17、.)>>>,11)array( 1., 1., 2.)但是如果概率數(shù)組,如,與自由度數(shù)組,如10,11,12具有相同的數(shù)組形態(tài),則進(jìn)行對(duì)應(yīng)匹配,我 們可以分別得到10% 5% 1娓的臨界值對(duì)于10, 11,12的自由度。>>>>>> ,10, 11, 12) array( 1., 1., 2.)離散分布的特殊之處離散分布的方法的大多數(shù)與連續(xù)分布很類(lèi)似。當(dāng)然像 pdf被更換為密度函數(shù)pmf,沒(méi)有估計(jì)方法,像 fit就不能用了。而scale不是一個(gè)合法的關(guān)鍵字參數(shù)。Location參數(shù),關(guān)鍵字10c則仍然可以使用 用于位移。cdf的計(jì)算要求一些
18、額外的關(guān)注。在連續(xù)分布的情況下,累積分布函數(shù)在大多數(shù)標(biāo)準(zhǔn)情況下是嚴(yán)格遞 增的,所以有唯一的逆。而 cdf在離散分布,無(wú)論如何,是階躍函數(shù),所以 cdf的逆,分位點(diǎn)函數(shù), 要求一個(gè)不同的定義:ppf(q) = minx : cdf(x) >= q, x integer為了更多信息可以看這里。我們可以看這個(gè)超幾何分布的例子>>>>>> from import hypergeom>>> M, n, N = 20, 7, 12如果我們?cè)谝恍┱麛?shù)點(diǎn)使用cdf,則它們的cdf值再作用ppf會(huì)回到開(kāi)始的值。>>>>>&
19、gt; x = ( 4) *2>>> xarray(0, 2, 4, 6)>>> prb = (x, M, n, N)>>> prbarray( , , 0.,0.)>>> (prb, M, n, N)如果我們使用的值不是cdf的函數(shù)值,則我們得到一個(gè)更高的值。>>>>>> (prb + 1e-8 , M, n, N)array( 1., 3., 5., 7.)>>> (prb - 1e-8 , M, n, N)array( 0., 2., 4., 6.)分布擬合非凍結(jié)
20、分布的參數(shù)估計(jì)的主要方法:fit :分布參數(shù)的極大似然估計(jì),包括 location 與scalefit_loc_scale:給定形態(tài)參數(shù)確定下的location 和scale參數(shù)的估計(jì)nnlf:負(fù)對(duì)數(shù)似然函數(shù)expect:計(jì)算函數(shù)pdf或pmf的期望值。性能問(wèn)題與注意事項(xiàng)每個(gè)方法的性能與運(yùn)行速度根據(jù)分布的不同表現(xiàn)差異極大。方法的結(jié)果可以由兩種方式獲得,精確計(jì)算或使用獨(dú)立于各具體分布的通用算法。對(duì)于精確計(jì)算,一個(gè)分布能使用這種方式的第一種情況,這個(gè)分布是包中直接給你的(如標(biāo)準(zhǔn)正態(tài)分 布),第二,給出解析形式,第三通過(guò)或或的rvs特殊函數(shù)給出。一般來(lái)說(shuō)使用精確計(jì)算會(huì)比較快。另一方面,通用方法被用于
21、當(dāng)分布沒(méi)有被指派明確的計(jì)算方法時(shí)使用。為了定義一個(gè)分布,只有 pdf 或cdf是必須的;通用方法使用數(shù)值積分和求根法得到結(jié)果。作為例子,rgh = 2, 2, 2, size=100)以這種方式創(chuàng)建了 10嚇隨機(jī)變量(抽了 100個(gè)值),這在我的電腦上花了 19秒(譯者:我花了秒),對(duì) 比取一百萬(wàn)個(gè)標(biāo)準(zhǔn)正態(tài)分布的值只需要 1秒。遺留問(wèn)題里的分布最近進(jìn)行了升級(jí)并且被仔細(xì)的檢查過(guò)了,不過(guò)仍有一些問(wèn)題存在。分布在很多參數(shù)區(qū)間上的值被測(cè)試過(guò)了, 然而在一些奇葩的邊界,仍然可能有錯(cuò)誤的值存在。fit的極大似然估計(jì)以默認(rèn)值作為初始參數(shù)將不會(huì)工作的很好,用戶(hù)必須指派合適的初始參數(shù)。并且,對(duì)于一些分布使用極大
22、似然估計(jì)本身就不是一個(gè)好的選擇。構(gòu)造具體的分布下一個(gè)例子展示了如何建立你自己的分布。更多的例子見(jiàn)分布用法以及統(tǒng)計(jì)檢驗(yàn)創(chuàng)建一個(gè)連續(xù)分布,繼承 rv_continuous 類(lèi)創(chuàng)建連續(xù)分布是非常簡(jiǎn)單的。>>>>>> from scipy import stats>>> class deterministic_gen. def _cdf ( self , x):.return (x < 0, 0. , 1.). def _stats (self ):.return 0. , 0. , 0. , 0.>>>>>&g
23、t; deterministic = deterministic_gen(name ="deterministic" )>>> (-3, 3,)array( 0., 0., 0., 0., 0., 0., 1., 1., 1., 1., 1., 1.)令人高興的是,pdf也能被自動(dòng)計(jì)算出來(lái):>>>> >> (-3, 3,)array( +00, +00, +00,+00, +00, +00,+04,)注意這種用法的性能問(wèn)題,參見(jiàn)“性能問(wèn)題與注意事項(xiàng)” 一節(jié)。這種缺乏信息的通用計(jì)算可能非常慢。 而且再看看下面這個(gè)準(zhǔn)確性的例
24、子:>>>> >> from import quad> >> quad, - 1e-1 , 1e-1)但這并不是對(duì)pdf積分的正確的結(jié)果,實(shí)際上結(jié)果應(yīng)為 1.讓我們將積分變得更小一些。 >>>>>> quad, -1e-3, 1e-3) # warning removed ,這樣看上去好多了,然而,問(wèn)題本身來(lái)源于pdf不是來(lái)自包給定的類(lèi)的定義。繼承 rv_discrete 類(lèi)在之后我們使用產(chǎn)生一個(gè)離散分布,其有一個(gè)整數(shù)區(qū)間截?cái)喔怕?。通用信息通用信息可以從rv_discrete 的docstring 中得到
25、。>>>>>> from import rv_discrete>>> help(rv_discrete)我們學(xué)到這一點(diǎn):“你可以構(gòu)建任意一個(gè)像P(X=xk尸pk 一樣形式的離散rv ,通過(guò)傳遞(xk,pk)元組序列給rv_discrete初始化方法(通過(guò)value=keyword方式),但其不能有0概率值?!苯酉聛?lái),還有一些進(jìn)一步的要求:關(guān)鍵字名字必須知道。Xk點(diǎn)必須是整數(shù)小數(shù)的有效位數(shù)應(yīng)當(dāng)被給出。事實(shí)上,如果最后兩個(gè)要求沒(méi)有被滿(mǎn)足,一個(gè)異常將被拋出或者導(dǎo)致一個(gè)錯(cuò)誤的數(shù)值。一個(gè)例子讓我們開(kāi)始辦,首先>>>> >
26、> npoints = 20# number of integer support points of the distribution minus 1> >> npointsh= npoints / 2> >> npointsf= float (npoints)> >> nbound = 4# bounds for the truncated normal> >> normbound = ( 1+1/ npointsf)* nbound # actual bounds of truncated normal>
27、 >> grid = ( - npointsh, npointsh+2, 1)# integer grid> >> gridlimitsnorm = / npointsh * nbound # bin limits for the truncnorm> >> gridlimits = grid -# used later in the analysis> >> grid = grid:-1> >> probs = -normbound, normbound)> >> gridint = gri
28、d最后我們可以繼承rv_discrete 類(lèi)>>>> >> normdiscrete = (values =(gridint,.(probs, decimals=7), name ='normdiscrete' )現(xiàn)在我們已經(jīng)定義了這個(gè)分布,我們可以調(diào)用其所有常規(guī)的離散分布方法。>>>> >> print 'mean = % variance =% skew = % kurtosis =% %. (moments = 'mvsk')mean = , variance = , skew
29、 = , kurtosis =>>>> >> nd_std = (moments -v')測(cè)試上面的結(jié)果讓我們產(chǎn)生一個(gè)隨機(jī)樣本并且比較連續(xù)概率的情況。>>>»> n_sample = 500# fix the seed for replicability»> rvs = (size =n_sample)»> rvsnd = rvs»> f, I = (rvs, bins =gridlimits)»> sfreq = (gridint, f, probs
30、*n_sample) . T»> print sfreq+01 +00 +00 +00 +00 +00 +00 +00 +00+00 +00 +00+00 +00 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +01 +01+00 +00 +00+00 +00 +00+00 +00 +00 +00 +01 +00 (Source code )(Source code )接下來(lái),我們可以測(cè)試,是否我們的樣本取自于一個(gè)normdiscret
31、e分布。這也是在驗(yàn)證是否隨機(jī)數(shù)是以正確的方式產(chǎn)生的??ǚ綔y(cè)試要求起碼在每個(gè)子區(qū)間(bin )里具有最小數(shù)目的觀測(cè)值。我們組合末端子區(qū)間進(jìn)大子區(qū)間 所以它們現(xiàn)在包含了足夠數(shù)量的觀測(cè)值。>>>> >> f2 =(町5.sum(), f 5:-5, f -5: . sum()> >> p2 = (probs:5. sum(), probs 5: - 5, probs - 5: . sum()> >> ch2, pval = (f2, p2 *n_sample)>>>>>> print '
32、;chisquare for normdiscrete: chi2 =%pvalue = % %(ch2, pval)chisquare for normdiscrete: chi2 = pvalue =P值在這個(gè)情況下是不顯著地,所以我們可以斷言我們的隨機(jī)樣本的確是由此分布產(chǎn)生的。樣本分析首先,我們創(chuàng)建一些隨機(jī)變量。我們?cè)O(shè)置一個(gè)種子所以每次我們都可以得到相同的結(jié)果以便觀察。作 為一個(gè)例子,我們從t分布中抽一個(gè)樣本。>>>> >> x = size =1000)這里,我們?cè)O(shè)置了 t分布的形態(tài)參數(shù),在這里就是自由度,設(shè)為10.使用size=1000表示我們的樣
33、本由100嚇抽樣是獨(dú)立的(偽)。當(dāng)我們不指派10c和scale時(shí),它們具有默認(rèn)值0和1.描述統(tǒng)計(jì)X是一個(gè)numpy數(shù)組。我們可以直接調(diào)用它所有的方法。>>>> >> print (), ()# equivalent to (x), (x)>>> print (), ()# equivalent to (x), (x)如何比較分布本身和它的樣本的指標(biāo)>>>=(x)>>> m, v, s, k = moments -mvsk')>>> n, (smin, smax), sm, sv,
34、 ss, sk>>>>>> print 'distribution:' ,distribution:>>> sstr = 'mean = % variance =% skew = % kurtosis =%>>> print sstr %m, v, s ,k)mean = , variance = , skew = , kurtosis =>>> print 'sample: ',sample:>>> print sstr %sm, sv, ss,
35、 sk)mean = , variance = , skew = , kurtosis =注意:用的是無(wú)偏的方差估計(jì)量,而卻用的是有偏的估計(jì)量。T檢驗(yàn)和KS檢驗(yàn)我們可以使用t檢驗(yàn)是否樣本與給定均值(這里是理論均值)存在統(tǒng)計(jì)顯著差異。>>>>>> print 't-statistic =% pvalue = % % (x, m)t-statistic = pvalue =P值為,這代表第一類(lèi)錯(cuò)誤的概率,在例子中,為 10%我們不能拒絕“該樣本均值為 0”這個(gè)假設(shè), 0是標(biāo)準(zhǔn)t分布的理論均值。 >>>>>> tt =
36、(sm - m)/ (sv / float (n)# t-statistic for mean>>> pval = n -1)*2 # two-sided pvalue = Prob(abs(t)>tt)>>> print 't-statistic =% pvalue = % %(tt, pval)t-statistic = pvalue =這里Kolmogorov-Smirnov檢馬敘(KS檢驗(yàn))被被用來(lái)檢驗(yàn)樣本是否來(lái)自一個(gè)標(biāo)準(zhǔn)的t分布。>>>>>> print 'KS-statistic D =%
37、 pvalue = % %(x,'t' , ( 10,)KS-statistic D = pvalue =又一次得到了很高的P值。所以我們不能才1絕樣本是來(lái)自t分布的假設(shè)。在實(shí)際應(yīng)用中,我們不能知 道潛在的分布到底是什么。如果我們使用KS檢驗(yàn)我們的樣本對(duì)照正態(tài)分布,那么我們將也不能拒絕我們的樣本是來(lái)自正態(tài)分布的,在這種情況下P值為左右。>>>>>> print 'KS-statistic D =% pvalue = % %(x, 'norm')KS-statistic D = pvalue =無(wú)論如何,標(biāo)準(zhǔn)正態(tài)分布有1
38、的方差,當(dāng)我們的樣本有時(shí)。如果我們標(biāo)準(zhǔn)化我們的樣本并且測(cè)試它比 照正態(tài)分布,那么P值將又一次很高我們將還是不能拒絕假設(shè)是來(lái)自正態(tài)分布的。>>>>>> d, pval = () / (), 'norm')>>> print 'KS-statistic D =% pvalue = % %(d, pval)KS-statistic D = pvalue =注釋?zhuān)篕S檢驗(yàn)假設(shè)我們比照的分布就是以給定的參數(shù)確定的,但我們?cè)谧詈蠊烙?jì)了均值和方差,這 個(gè)假設(shè)就被違反了,故而這個(gè)測(cè)試統(tǒng)計(jì)量的P值是含偏的,這個(gè)用法是錯(cuò)誤的。分布尾部最
39、后,我們可以檢查分布的右尾, 我們可以使用分位點(diǎn)函數(shù) ppf,其為cdf函數(shù)的逆,來(lái)獲得臨界值, 或者更直接的,我們可以使用殘存函數(shù)的逆來(lái)辦。>>>>>> crit01, crit05, crit10=,10)>>> print 'critical values from ppf at 1%5 %and 10 % %(crit01, crit05, crit10)critical values from ppf at 1%, 5% and 10%>>> print 'critical values from
40、 isf at 1%5 %and 10 % % % tuple values from isf at 1%,5% and 10%>>>>>>freq01=(x>crit01)float100>>>freq05=(x>crit05)float100>>>freq10=(x>crit10)float100>>>print'sample %-frequency at 1%5 %and 10 %tail%(freq01, freq05, freq10)sample %-frequency
41、 at 1%, 5% and 10% tail在這三種情況中,我們的樣本有有一個(gè)更重的尾部,即實(shí)際在理論分界值右邊的概率要高于理論值。我們可以通過(guò)使用更大的樣本來(lái)獲得更好的擬合。在以下情況經(jīng)驗(yàn)頻率已經(jīng)很接近理論概率了,但即使我們重復(fù)這個(gè)過(guò)程若干次,波動(dòng)依然會(huì)保持在這個(gè)程度。>>>>>> freq05l = size =10000) > crit05) / * 100>>> print 'larger sample%requency at 5%ail%freq05llarger sample %-frequency at 5%
42、tail我們也可以比較它與正態(tài)分布的尾部,其有一個(gè)輕的多的尾部:>>>>>> print 'tail prob. of normal at 1%5 %and 10 % %.tuple crit05, crit10) *100)tail prob. of normal at 1%, 5% and 10%卡方檢驗(yàn)可以被用來(lái)測(cè)試,是否一個(gè)有限的分類(lèi)觀測(cè)值頻率與假定的理論概率分布具有顯著差異。>>>>>> quantiles =,>>> crit = 10)>>> print crit
43、-Inf-2.-1.-1. 1. 1.2. Inf> >> n_sample => >> freqcount = (x, bins =crit) 0> >> tprob = (quantiles)> >> nprob = tch, tpval = (freqcount, tprob *n_sample)> >> nch, npval = (freqcount, nprob *n_sample)> >> print 'chisquare for t: chi2 =% pvalue
44、= % %(tch, tpval)chisquare for t: chi2 = pvalue =chisquare for normal: chi2 = pvalue =我們看到當(dāng)t分布檢驗(yàn)沒(méi)被拒絕時(shí)標(biāo)準(zhǔn)正態(tài)分布卻被完全拒絕。在我們的樣本區(qū)分出這兩個(gè)分布后,我們可以先進(jìn)行擬合確定scale與location再檢查擬合后的分布的差異性。我們可以先進(jìn)行擬合,再用擬合分布而不是默認(rèn)(起碼 location和scale是默認(rèn)的)分布去進(jìn)行檢 驗(yàn)。>>>> >> tdof, tloc, tscale = nloc, nscale = tprob = tdof, 10
45、c =tloc, scale =tscale)> >> nprob = loc =nloc, scale =nscale)> >> tch, tpval= (freqcount, tprob* n_sample)> >> nch, npval= (freqcount, nprob*n_sample)> >> print'chisquare for t: chi2 =% pvalue = % %(tch, tpval)chisquare for t: chi2 = pvalue => >> prin
46、t'chisquare for normal: chi2 =% pvalue = % %(nch, npval)chisquare for normal: chi2 = pvalue =在經(jīng)過(guò)參數(shù)調(diào)整之后,我們?nèi)匀豢梢砸?%K平拒絕正態(tài)分布假設(shè)。然而卻以95%勺p值顯然的不能拒絕t分布。正態(tài)分布的特殊檢驗(yàn)自從正態(tài)分布變?yōu)榻y(tǒng)計(jì)學(xué)中最常見(jiàn)的分布,就出現(xiàn)了大量的方法用來(lái)檢驗(yàn)一個(gè)樣本是否可以被看成是 來(lái)自正態(tài)分布的。首先我們檢驗(yàn)分布的峰度和偏度是否顯著地與正態(tài)分布的對(duì)應(yīng)值相差異。>>>>>> print 'normal skewtest testst
47、at =% pvalue = % %(x)normal skewtest teststat = pvalue =>>> print 'normal kurtosistest teststat =% pvalue = % %(x)normal kurtosistest teststat = pvalue =將這兩個(gè)檢驗(yàn)組合起來(lái)的正態(tài)性檢驗(yàn)>>>> >> print 'normaltest teststat =% pvalue = % %(x)normaltest teststat = pvalue =在所有三個(gè)測(cè)試中,P值是非
48、常低的,所以我們可以拒絕我們的樣本的峰度與偏度與正態(tài)分布相同的 假設(shè)。當(dāng)我們的樣本標(biāo)準(zhǔn)化之后,我們依舊得到相同的結(jié)果。>>>> >> print 'normaltest teststat =% pvalue = % %.()/()normaltest teststat = pvalue =因?yàn)檎龖B(tài)性被很強(qiáng)的拒絕了,所以我們可以檢查這種檢驗(yàn)方式是否可以有效地作用到其他情況中。>>>> >> print 'normaltest teststat =%pvalue = % % size =100)normalte
49、st teststat = pvalue =我們檢驗(yàn)了小樣本的t分布樣本的觀測(cè)值以及一個(gè)大樣本的正態(tài)分布觀測(cè)值, 在這兩種情況中我們都 不能拒絕其來(lái)自正態(tài)分布的空假設(shè)。得到這樣的結(jié)果是因?yàn)榍罢呤且驗(yàn)闊o(wú)法區(qū)分小樣本下的 t分布, 后者是因?yàn)樗緛?lái)就來(lái)自正態(tài)分布。比較兩個(gè)樣本接下來(lái),我們有兩個(gè)分布,其可以判定為相同或者來(lái)自不同的分布,以及我們希望測(cè)試是否這些樣本 有相同的統(tǒng)計(jì)特征。均值以相同的均值產(chǎn)生的樣本進(jìn)行檢驗(yàn):>>>>>> rvsl = scale =10, size =500)>>> rvs2 = scale =10, size =50
50、0)>>> (rvsl, rvs2)以不同的均值產(chǎn)生的樣本進(jìn)行檢驗(yàn):>>>>>> rvs3 = scale =10, size =500)>>> (rvsl, rvs3)對(duì)于兩個(gè)不同的樣本進(jìn)行的 KS檢驗(yàn)在這個(gè)例子中我們使用兩個(gè)同分布的樣本進(jìn)行檢驗(yàn).設(shè)因?yàn)閜值很高,毫不奇怪我們不能拒絕原假。>>>>>> (rvsl, rvs2)在第二個(gè)例子中,由于均值不同,所以我們可以拒絕空假設(shè),由 P值小于1%>>>>>> (rvsl, rvs3)核密度估計(jì)一個(gè)常見(jiàn)
51、的統(tǒng)計(jì)學(xué)問(wèn)題是從一個(gè)樣本中估計(jì)隨機(jī)變量的概率密度分布函數(shù)(PDF這個(gè)問(wèn)題被稱(chēng)為密度估計(jì),對(duì)此最著名的工具是直方圖。直方圖是一個(gè)很好的可視化工具(主要是因?yàn)槊總€(gè)人都理解它) 但是對(duì)于對(duì)于數(shù)據(jù)特征的利用卻并不是非常有效率。核密度估計(jì)(KDE對(duì)于這個(gè)問(wèn)題)是一個(gè)更有效的工具。這個(gè)gaussian kde估計(jì)方法可以被用來(lái)估計(jì)單元或多元數(shù)據(jù)的PDF它在數(shù)據(jù)呈單峰的時(shí)候工作的最好,但也可以在多峰情況下工作。單元估計(jì)我們以一個(gè)最小數(shù)據(jù)集來(lái)觀察gaussian kde是如何工作的,以及帶寬(bandwidth )的不同選擇方式。PDF對(duì)應(yīng)的數(shù)據(jù)被以藍(lán)線的形式顯示在圖像的底端(被稱(chēng)為毯圖( rug plot
52、)>>>>>> from scipy import stats>>> import as plt>>>>>> x1 = ( -7, -5, 1, 4, 5, dtype> >> kdel = (x1)> >> kde2 = (x1, bw_method -silverman' )>>>> >> fig =()> >> ax = ( 111)>>>> >> (x1, ,
53、9;b+' , ms =20)# rug plot> >> x_eval = ( -10, 10, num =200)> >> (x_eval, kde1(x_eval),'k-' , label ="Scott's Rule" )>>> (x_eval, kde1(x_eval),'r-' , label ="Silverman's Rule")>>>>>> ()(Source code )以及帶寬的選擇相比
54、較于數(shù)據(jù)的我們看到在Scott規(guī)則以及Silverman規(guī)則下的結(jié)果幾乎沒(méi)有差異。稀少顯得太寬。我們可以定義我們的帶寬函數(shù)以獲得一個(gè)更少平滑的結(jié)果>>>>>> def my_kde_bandwidth (obj, fac =1. / 5):"""We use Scott's Rule, multiplied by a constant factor."""return , -1. /+ 4) * fac>>>>>> fig=()>>> a
55、x=(111)>>>>>>(x1, ,'b+' , ms =20)# rug plot>>>kde3 = (x1, bw_method=my_kde_bandwidth)>>>(x_eval, kde3(x_eval),'g-' , label ="With smaller BW")>>>>>> ()(Source code )我們看到如果我們?cè)O(shè)置帶寬為非常狹窄,則獲得PDF的估計(jì)退化為圍繞在數(shù)據(jù)點(diǎn)的簡(jiǎn)單的高斯和。我們現(xiàn)在使用更真實(shí)的例
56、子,并且看看在兩種帶寬選擇規(guī)則中的差異。這些規(guī)則被認(rèn)為在正態(tài)分布上很好用,但即使是偏離正態(tài)的單峰分布上它也工作的很好。作為一個(gè)非正態(tài)分布,我們采用5自由度的t分布。import numpy as np import as pltfrom scipy import stats=# random data, normal distributionxs = () -1, () +1, 200)kdel = (x1)kde2 = (x1, bw_method ='silverman' )fig = (figsize =(8, 6)ax1 = ( 211)(x1, ,'b+
57、9; , ms =12) # rug plot(xs, kde1(xs),'k-' , label ="Scott's Rule" )(xs, kde2(xs),'b-' , label ="Silverman's Rule")(xs, 'r-', label ="True PDF")('x')('Density')("Normal (top) and Student's T$_df=5$ (bottom) distrib
58、utions")(loc =1)x2 = size =200) # random data, T distributionxs = () - 1, ()+ 1, 200)kde3 = (x2)kde4 = (x2, bw_method ='silverman' )ax2 = ( 212)(x2, ,'b+' , ms =12) # rug plot(xs, kde3(xs),'k-' , label ="Scott's Rule" )(xs, kde4(xs),'b-' , label =&q
59、uot;Silverman's Rule")(xs, 5), 'r-', label ="True PDF")('x')('Density')()(Source code )卜面我們看到這個(gè)一個(gè)寬一個(gè)窄的雙峰分布??梢韵氲浇Y(jié)果將難達(dá)到以十分近似,因?yàn)槊總€(gè)峰需要不同的帶寬去擬合>>>>>>from functools import partial>>>>>>>>>>>>loci, scalel, sizelloc2, scale2, size2=(-2, 1, 175)=(2, ,50)x2 = ( scale =scale1, size =size1),scale=scale2, size =size2)>>>>>>x_eval = () - 1,()+ 1, 500)>>>>>>>>>>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度知識(shí)產(chǎn)權(quán)許可合同內(nèi)容修訂指南
- 二零二五年度拓展訓(xùn)練場(chǎng)地與高校合作教育項(xiàng)目協(xié)議
- 二零二五年度物流運(yùn)輸企業(yè)員工入職保密協(xié)議及供應(yīng)鏈保護(hù)
- 2025年度高端定制酒定制生產(chǎn)合同
- 二零二五年度足療中心員工勞動(dòng)合同范本
- 2025年度終止勞動(dòng)合同協(xié)議書(shū):SS企業(yè)員工TT合同終止及離職手續(xù)辦理協(xié)議
- 二零二五年度醫(yī)療援助項(xiàng)目醫(yī)生聘用協(xié)議
- 二零二五年度口腔診所負(fù)責(zé)人侵權(quán)責(zé)任免除與賠償處理合同
- 二零二五年度上市公司股份回購(gòu)?fù)斯蓞f(xié)議
- 2025年度高科技園區(qū)土地租賃服務(wù)協(xié)議
- 初中物理人教版八年級(jí)下冊(cè) 第1節(jié)牛頓第一定律 課件
- 網(wǎng)站培訓(xùn)內(nèi)容trswcm65表單選件用戶(hù)手冊(cè)
- 監(jiān)理大綱(范本)
- 空調(diào)系統(tǒng)維保記錄表格模板
- 打印版-圓與二次函數(shù)綜合題精練(帶答案)
- 工程結(jié)算書(shū)標(biāo)準(zhǔn)
- 氧氣管道吹掃方案(共7頁(yè))
- JJG-943-2011-總懸浮顆粒物采樣器
- 2018年湖北省襄陽(yáng)市中考物理試卷
- 波程差與光程差
- 常用測(cè)井曲線符號(hào)及單位(最規(guī)范版)
評(píng)論
0/150
提交評(píng)論