Chi-kwadraattoets toegepast op één variabele.
De chi-kwadraattoets toegepast op één variabele gebruik je om te toetsen of de verdeling van de waarden van die variabelen overeenkomt met je verwachting.
Stel we bekijken de variabele Opleiding. Die heeft een verdeling van:
> table(Opleiding)
Stel de verwachting zou zijn dat de verdeling per opleiding gelijk zou zijn, dan is de vraag of de afwijking (zoals te zien is in de tabel) veroorzaakt wordt door toeval of dat de kans groot is dat dit de uitslag is, en er dus niets aan de hand is. Dit wordt getoetst met de "chisq.test" functie. Dit is dezelfde Chi-kwadraat functie als bij het toetsen op twee verschillen tussen twee variabelen. De aanpak kan alleen even iets lastiger lijken.
De Chi-kwadraattoets wordt toegepast op een table. Handig is om die table een naam te geven b.v.
> FrequentieTabel = table(Opleiding)
De verwachting is dat per opleiding evenveel studenten in de steekproef aanwezig zijn. Dit is een tabel met 4 maal de waarde 0,25.
> Verwacht=c(0.25,0.25,0.25,0.25)
We passen hier als volgt de Chi-kwadraattoets op toe:
> chisq.test(FrequentieTabel,p=Verwacht)
De kans dat uitgaande van een gelijke verdeling per opleiding de uitkomst is zoals gemeten is 2.909e-09, is dus heel erg klein. We verwerpen dan het uitgangspunt dat de verdeling gelijk is.
Van belang bij toetsen van een variabele dat je p=Verwacht meegeeft in de chisq.test().
De verwachte waarden kun je ook direct door R laten berekenen en wel als volgt:
> Verwacht=rep(1/length(FrequentieTabel),length(FrequentieTabel))
> Verwacht
[1] 0.25 0.25 0.25 0.25
length(FrequentieTabel) telt het aantal waarden.
rep() herhaalt het eerste getal (1/aantal waarden), het aantal keren van het tweede getal (aantal waarden). Zou je b.v de Reistijd nemen, dan levert dat het volgende op:
> FrequentieTabel=table(Reistijd)
> Verwacht=rep(1/length(FrequentieTabel),length(FrequentieTabel))
> Verwacht
[1] 0.1666667 0.1666667 0.1666667 0.1666667 0.1666667 0.1666667
> chisq.test(FrequentieTabel,p=Verwacht)
De p waarde is kleiner dan 5% dus we verwerpen de aanname dat de waarden gelijk verdeeld zijn.
Door slim gebruik te maken van de pijltoetsen in R kun je heel snel van een nieuwe variabele de kans uitrekenen dat de verdeling per waarde gelijk is.
Wat te doen als de verwachte waarden niet gelijk zijn. Stel de verwachte waarden zijn 35% voor Bedrijfskunde MER, 35% voor facility Management, 15% voor Human Resource Management en 15% voor logistiek. Ga dan als volgt te werk:
Stel eerst FrequentieTabel in op Opleiding (als die er niet al op staan).
Maak dan een tabel aan met de verwachte waarden door gebruikt te maken van de c() functie en voer de chisq.test uit.
> FrequentieTabel=table(Opleiding)
> Verwacht=c(0.35,0.35,0.15,0.15)
> chisq.test(FrequentieTabel,p=Verwacht)
Ook hierbij is de p waarde heel klein. Dus de aanname dat de verdeling 35%,35%,15%,15% is, is niet juist.