scipy.stats.
chi2_contingency
(observed, correction=True, lambda_=None)¶
Chi-square test of independence of variables in a contingency table.
tämä funktio laskee chi-square-statistiikan ja p-arvon hypoteesitestille, joka osoittaa Havaittujen taajuuksien riippumattomuuden kontingenssitaulukossa. Odotetut frekvenssit on laskettu riippumattomuus-oletuksen mukaisten marginaalisummien perusteella; katsoscipy.stats.contingency.expected_freq
. Offreedomin astemäärä on (ilmaistuna käyttäen numpy-funktioita ja attribuutteja):
dof = observed.size - sum(observed.shape) + observed.ndim - 1
parametrit observedarray_like
varataulukko. Taulukko sisältää havaitut esiintymistiheydet (poikkeamien lukumäärä) kussakin kategoriassa. Kaksiulotteisessa tapauksessa taulukkoa kuvataan usein ”R x C-taulukkona”.
correctionbool, valinnainen
Jos tosi, ja vapausasteet ovat 1, sovelletaan Yatesin oikaisua jatkuvuuteen. Korjauksen vaikutus on säätää jokaista havaittua arvoa 0,5: llä kohti vastaavaa odotusarvoa.
lambda_float tai str, valinnainen.
oletusarvoisesti tässä testissä laskettu tilastotieto on Pearsonin ’ Schi-squared statistic . lambda_ sallii sen sijaan käyttää tilastotietoa theCressie-Read power divergence-perheestä. Katso lisätietojapower_divergence
.
palauttaa chi2float
testin tilastotiedot.
pfloat
testin p-arvo
dofint
vapausasteet
expectedndarray, sama muoto kuin havaittu
odotetut frekvenssit, jotka perustuvat taulukon marginaalisummiin.
huomautukset
usein lainattu ohje tämän laskelman pätevyydelle on, että testiä tulisi käyttää vain, jos kussakin solussa havaitut ja odotetut taajuudet ovat vähintään 5.
Tämä on testi eri apopulaatioluokkien riippumattomuudelle. Testi on mielekäs vain, kun dimensio ofobserved on kaksi tai enemmän. Testin soveltaminen yhden dimensionaltioon johtaa aina odotukseen, joka on yhtä suuri kuin havaittu, ja achi-neliötilastoon, joka on yhtä suuri kuin 0.
tämä funktio ei käsittele naamioituja ryhmiä, koska laskutoimitus ei ole järkevää puuttuvien arvojen kanssa.
Like stats.chisquare, tämä funktio laskee chi-square statistic;convenience tämä toiminto tarjoaa on selvittää odotetut tiheydet ja vapausasteet annetusta valmiustaulukosta.Jos nämä olisivat jo tiedossa, ja jos Yatesin korjausta ei vaadittaisi, voitaisiin käyttää tilastoja.chisquare. Eli jos kutsutaan:
chi2, p, dof, ex = chi2_contingency(obs, correction=False)
(chi2, p) == stats.chisquare(obs.ravel(), f_exp=ex.ravel(), ddof=obs.size - 1 - dof)
lambda_-argumentti lisättiin versiossa 0.13.0 kippis.
1
”Varataulukko”,https://en.wikipedia.org/wiki/Contingency_table
2
”Pearson’ s chi-squared test”,https://en.wikipedia.org/wiki/Pearson%27s_chi-squared_test
3
Cressie, N. and Read, T. R. C., ”Multinomial Goodness-of-FitTests”, J. Royal Stat. Soc. Series B, Vol. 46, nro 3 (1984), s.440 & ndash; 464.
Examples
a two-way example (2 x 3):
>>> from scipy.stats import chi2_contingency>>> obs = np.array(, ])>>> chi2_contingency(obs)(2.7777777777777777, 0.24935220877729619, 2, array(, ]))
suorita testi käyttäen log-todennäköisyyssuhdetta (eli ”G-testiä”)Pearsonin chi-squared statistiikan sijaan.
>>> g, p, dof, expctd = chi2_contingency(obs, lambda_="log-likelihood")>>> g, p(2.7688587616781319, 0.25046668010954165)
nelitieesimerkki (2 x 2 x 2 x 2):