scipy.Statistiek.chi2_contingency¶

scipy.stats.chi2_contingency(waargenomen, correctie=waar, lambda_=geen)¶

Chi-kwadraattest van de onafhankelijkheid van variabelen in een contingentietabel.

Deze functie berekent de chi-kwadraat statistiek en de p-waarde voor de hypothese test van de onafhankelijkheid van de waargenomen frequenties in de waargenomen tabel. De verwachte frequenties worden berekend op basis van de marginale bedragen onder de aanname van onafhankelijkheid; ziescipy.stats.contingency.expected_freq. Het aantal graden offreedom is (uitgedrukt met numpy functies en attributen):

dof = observed.size - sum(observed.shape) + observed.ndim - 1

Parameters observedarray_like

De contingency table. De tabel bevat de waargenomen frequenties (d.w.z. het aantal voorvallen) in elke categorie. In het tweedimensionale geval wordt de tabel vaak beschreven als een”R X C tabel”.

correctionbool, optioneel

indien waar, en de vrijheidsgraden 1 zijn, Past Yates ‘ correctionfor continuity toe. Het effect van de correctie is dat elke waargenomen waarde met 0,5 wordt aangepast in de richting van de overeenkomstige verwachte waarde.

lambda_float of str, facultatief.

standaard is de in deze test berekende statistiek Pearson ‘ schi-kwadraatstatistiek . lambda_ staat toe dat een statistiek van de Persie-Read power divergence familie in plaats daarvan worden gebruikt. Ziepower_divergence voor details.

geeft chi2float

de teststatistiek terug.

pfloat

De p-waarde van de test

dofint

vrijheidsgraden

expectedndarray, dezelfde vorm als waargenomen

de verwachte frequenties, gebaseerd op de marginale sommen van de tabel.

opmerkingen

een vaak geciteerde richtlijn voor de validiteit van deze berekening is dat de test alleen moet worden gebruikt als de waargenomen en verwachte frequenties in elke cel ten minste 5 zijn.

Dit is een test voor de onafhankelijkheid van verschillende categorieën van apopulatie. De test is alleen zinvol wanneer de dimensie van waargenomen is twee of meer. Het toepassen van de test op een eendimensionaltabel zal altijd resulteren in verwachte gelijk aan waargenomen en achi-kwadraat statistiek gelijk aan 0.

Deze functie behandelt geen gemaskeerde arrays, omdat de berekening geen zin heeft met ontbrekende waarden.

soortgelijke statistieken.chisquare, deze functie berekent een Chi-kwadraat statistiek;het gemak van deze functie is het berekenen van de verwachte frequentie en graden van vrijheid van de gegeven contingentie tabel.Als deze al bekend waren, en als de correctie van de Yates niet nodig was, kon men statistieken gebruiken.chisquare. Dat wil zeggen, als men aanroept:

chi2, p, dof, ex = chi2_contingency(obs, correction=False)

dan is het volgende waar:

(chi2, p) == stats.chisquare(obs.ravel(), f_exp=ex.ravel(), ddof=obs.size - 1 - dof)

het lambda_argument is toegevoegd in versie 0.13.0 van scipy.

1

“Contingency table”,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, Nr. 3 (1984), blz.440-464.

voorbeelden

een tweerichtingsvoorbeeld (2 x 3):

>>> from scipy.stats import chi2_contingency>>> obs = np.array(, ])>>> chi2_contingency(obs)(2.7777777777777777, 0.24935220877729619, 2, array(, ]))

Voer de test uit met behulp van de log-waarschijnlijkheidsverhouding (d.w.z. de “G-test”)in plaats van de chi-kwadraatstatistiek van Pearson.

>>> g, p, dof, expctd = chi2_contingency(obs, lambda_="log-likelihood")>>> g, p(2.7688587616781319, 0.25046668010954165)

een vierwegvoorbeeld (2 x 2 x 2 x 2):

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.