Gebruik de Mann-Whitney U toets om te toetsen of de gemiddelde rangnummers van de verdelingen van twee ongepaarde groepen van elkaar verschillen.1 De Mann-Whitney U toets is een alternatief voor de ongepaarde t-toets als de verdelingen niet normaal verdeeld zijn. Alleen als de verdelingen van beide groepen dezelfde vorm hebben, kan de Mann-Whitney U toets ook gebruikt worden om het verschil tussen de medianen van twee groepen te toetsen.2 Gebruik Mood’s mediaan toets om medianen te toetsen bij twee ongepaarde groepen waarvan de verdelingen niet dezelfde vorm hebben.
De onderwijsdirecteur van de opleiding Business Administration van een hogeschool vraagt zich af of er verschil is in de studieresultaten van studenten met een Nederlandse vooropleiding en een buitenlandse vooropleiding. Met name in het tweede studiejaar lijken er verschillen op te treden die hij wil begrijpen om mogelijke interventies met zijn docenten te bespreken. Hij vraagt zich af: ‘Verschilt het aantal studiepunten in het tweede studiejaar van studenten met een Nederlandse vooropleiding van het aantal studiepunten in het tweede studiejaar van studenten met een buitenlandse vooropleiding?
Dit onderzoek vertaalt zich in de volgende combinatie van hypothesen, waarbij de nulhypothese zo geformuleerd is dat er geen effect of verschil is en de alternatieve hypothese zo geformuleerd is dat er wel een effect of verschil is.
H0: Er is geen verschil in het gemiddelde rangnummer van het behaalde aantal studiepunten in het tweede jaar tussen studenten met een buitenlandse vooropleiding en een Nederlandse vooropleiding.
HA: Er is een verschil in gemiddelde rangnummer van het behaalde aantal studiepunten in het tweede jaar tussen studenten met een buitenlandse vooropleiding en een Nederlandse vooropleiding. Eén van beide verdelingen bevat hogere waarden betreffende het behaalde aantal studiepunten.
Het meetniveau van de afhankelijke variabele is ordinaal3 of continu.4 In deze toetspagina staat een casus met continue data centraal; een casus met ordinale data met bijbehorende uitwerking is te vinden in de Mann-Whitney U toets II.
De Mann-Whitney U toets hoeft - in tegenstelling tot de ongepaarde t-toets - niet te voldoen aan de assumptie van normaliteit. Daarnaast hebben uitbijters minder invloed op het eindresultaat dan bij de ongepaarde t-toets. Daarentegen, als de data wel normaal verdeeld is, heeft de Mann-Whitney U toets minder onderscheidend vermogen5 dan de ongepaarde t-toets. Vandaar dat ondanks het voordeel van de grotere robuustheid er toch minder vaak voor de Mann-Whitney U toets gekozen wordt.
De Mann-Whitney U toets schrijft geen assumpties voor over de verdeling van de twee ongepaarde groepen.6 In principe toetst de Mann-Whitney U toets een hypothese over het verschil tussen het gemiddelde rangnummer van de verdelingen van twee ongepaarde groepen. De Mann-Whitney U toets maakt een rangschikking van alle observaties van beide groepen samengevoegd en telt vervolgens apart de rangnummers op voor de observaties in beide groepen. Met behulp van de groepsgroottes kan ook het gemiddelde rangnummer van beide groepen berekend worden. Het verschil tussen de gemiddelde rangnummers in beide groepen bepaalt de significantie van de toets.7 Daarom kan de Mann-Whitney U toets gezien worden als een toets die het gemiddelde rangnummer van twee groepen vergelijkt.
Als de verdelingen van de groepen niet dezelfde vorm hebben, doet de Mann-Whitney U toets een uitspraak over het verschil tussen verdelingen. Een verschil tussen verdelingen kan meerdere oorzaken hebben. De top of toppen van de verdelingen kunnen verschillend zijn, maar ook de spreiding van de verdeling kan verschillen.8 In alle gevallen is er echter een verschil tussen het gemiddelde rangnummer van de verdelingen. In andere woorden, de ene verdeling bevat hogere waarden dan de andere verdeling. Benoem daarom het gemiddelde rangnummer van beide groepen in de rapportage en visualiseer de verdeling van beide groepen om duidelijk te maken op welke manier de verdelingen van elkaar verschillen.
Als de verdelingen van beide ongepaarde groepen echter dezelfde vorm hebben, toetst de Mann-Whitney U toets ook een hypothese over het verschil tussen de medianen. Immers, het enige verschil tussen de verdeling is in dat geval een verschuiving van de verdeling, dus een verandering van de mediaan. In dat geval heeft de Mann-Whitney U toets een hoger onderscheidend vermogen9 dan Mood’s mediaan toets om medianen te toetsen.10
De p-waarde geeft aan of een (mogelijk) verschil tussen twee groepen significant is. De grootte van het verschil of effect is echter ook relevant. Een effectmaat is een gestandaardiseerde maat die de grootte van een effect weergeeft, zodat effecten van verschillende onderzoeken met elkaar vergeleken kunnen worden.11
De Mann-Whitney U toets heeft als effectmaat r. Een indicatie om r te interpreteren is: rond 0,1 is het een klein effect, rond 0,3 is het een gemiddeld effect en rond 0,5 is het een groot effect.12 De effectmaat r wordt voor de Mann-Whitney U toets berekend door de z-waarde behorend bij de p-waarde van de toets te delen door de wortel van het aantal observaties, i.e. \(\frac{z}{\sqrt{N}}\).13 Een correlatie tussen twee variabelen wordt vaak ook aangeduid met het symbool r. Beide zijn effectmaten, maar er is verder geen verband tussen de correlatie en de effectmaat van de Wilcoxon signed rank toets.
Er is data ingeladen met het aantal studiepunten dat studenten in het tweede jaar halen. dfPunten_jaar2_NL bevat Nederlandse studenten, dfPunten_jaar2_inter bevat internationale studenten.
Gebruik <dataframe>.head() en <dataframe>.tail() om de structuur van de data te bekijken.
# Pandas library importeren
import pandas as pd
## Eerste 6 observaties
print(dfStudiepunten_studiejaar2.head(6))
## Studentnummer Studiepunten Vooropleiding
## 0 3000364 0.0 Nederlands
## 1 3000372 57.0 buitenlands
## 2 3000548 12.0 Nederlands
## 3 3000715 0.0 buitenlands
## 4 3000964 42.0 Nederlands
## 5 3001081 48.0 Nederlands
## Laatste 6 observaties
print(dfStudiepunten_studiejaar2.tail(6))
## Studentnummer Studiepunten Vooropleiding
## 1494 3994944 48.0 Nederlands
## 1495 3995230 6.0 buitenlands
## 1496 3995911 51.0 Nederlands
## 1497 3996339 0.0 Nederlands
## 1498 3996684 57.0 buitenlands
## 1499 3997148 66.0 buitenlands
Bekijk de grootte, de mediaan en de kwantielen van de data met np.size() en np.quantile(). De mediaan en kwantielen worden vaak gebruikt als maat wanneer een verdeling niet symmetrisch is.
Studiepunten_Nederlands = dfStudiepunten_studiejaar2[dfStudiepunten_studiejaar2["Vooropleiding"] == "Nederlands"]["Studiepunten"]
Studiepunten_buitenlands = dfStudiepunten_studiejaar2[dfStudiepunten_studiejaar2["Vooropleiding"] == "buitenlands"]["Studiepunten"]
import numpy as np
print(np.size(Studiepunten_Nederlands))
## 950
print(np.quantile(Studiepunten_Nederlands, [0, 0.25, 0.5, 0.75, 1]))
## [ 0. 6. 45. 57. 66.]
print(np.size(Studiepunten_buitenlands))
## 550
print(np.quantile(Studiepunten_buitenlands, [0, 0.25, 0.5, 0.75, 1]))
## [ 0. 0. 12. 48. 66.]
Maak een histogram14 om de verdeling van het aantal studiepunten in het tweede jaar voor studenten met een Nederlandse en buitenlandse vooropleiding visueel weer te geven.15
## Histogram met matplotlib
import matplotlib.pyplot as plt
fig = plt.figure(figsize = (15, 10))
sub1 = fig.add_subplot(1, 2, 1)
title1 = plt.title("Nederlandse vooropleiding")
hist1 = plt.hist(Studiepunten_Nederlands, density = True, edgecolor = "black", bins = 29)
sub2 = fig.add_subplot(1, 2, 2)
title2 = plt.title("Buitenlandse vooropleiding")
hist2 = plt.hist(Studiepunten_buitenlands, density = True, edgecolor = "black", bins = 31)
main = fig.suptitle('Studiepunten van studenten Business Administration in het tweede jaar')
plt.show()
Beide histogrammen bevatten een grote groep studenten met een laag aantal studiepunten (twaalf of minder). De overige studenten volgen een ietwat scheve verdeling met de top rond de vijftig studiepunten. De verdelingen van beide groepen studenten hebben echter niet dezelfde vorm. De frequentie van het aantal studenten rond de vijftig studiepunten is veel hoger voor de studenten met Nederlandse vooropleiding, terwijl de frequentie van het aantal studenten met twaalf of minder studiepunten juist hoger is voor de studenten met een buitenlandse vooropleiding. De Mann-Whitney U toets kan in dit geval dus niet gebruikt worden om een uitspraak te doen over de significantie van het verschil van de medianen van beide groepen.
Gebruik de functie mannwhitneyu() van het scipy package om een Mann-Whitney U toets te doen. Het eerste argument bevat het aantal studiepunten van studenten met een Nederlandse vooropleiding Studiepunten_Nederlands; het tweede argument het aantal studiepunten van studenten met een buitenlandse vooropleiding Studiepunten_buitenlands. Voer daarna het argument alternative = 'two-sided' vanwege de tweezijdige alternatieve hypothese.
import scipy.stats as sp
sp.mannwhitneyu(Studiepunten_Nederlands,
Studiepunten_buitenlands,
alternative = 'two-sided')
## MannwhitneyuResult(statistic=336533.5, pvalue=7.419881960900597e-21)
Bereken vervolgens de effectmaat r op basis van de p-waarde van de Mann-Whitney U toets.
# Sla de p-waarde op
stat, pval = sp.wilcoxon(Alumni_jaarinkomens_T2, Alumni_jaarinkomens_T1, alternative = 'two-sided')
# Bereken de effectgrootte voor een tweezijdige toets
Effectmaat = sp.norm.ppf(pval/2) / np.sqrt(len(Alumni_jaarinkomens_T1))
# Bereken de effectgrootte voor een eenzijdige toets
#r = sp.norm.ppf(pval) / np.sqrt(len(Alumni_jaarinkomens_T1))
# Print de effectgrootte (vaak weergegeven als absolute waarde)
print(np.abs(Effectmaat))
## 0.8492417986891145
Bereken ten slotte het gemiddelde rangnummer van beide groepen. Beoordeel op basis van de gemiddelde rangnummers welke groep hogere waardes bevat.
#dfStudiepunten_studiejaar2[dfStudiepunten_studiejaar2["Vooropleiding"] == "Nederlands"]["Studiepunten"]
vvv = dfStudiepunten_studiejaar2["Vooropleiding"] == "Nederlands"
print(vvv)
## 0 True
## 1 False
## 2 True
## 3 False
## 4 True
## ...
## 1495 False
## 1496 True
## 1497 True
## 1498 False
## 1499 False
## Name: Vooropleiding, Length: 1500, dtype: bool
dfStudiepunten_studiejaar2[-vvv]
## Studentnummer Studiepunten Vooropleiding
## 1 3000372 57.0 buitenlands
## 3 3000715 0.0 buitenlands
## 6 3001192 0.0 buitenlands
## 7 3001803 0.0 buitenlands
## 8 3002896 12.0 buitenlands
## ... ... ... ...
## 1491 3993012 54.0 buitenlands
## 1493 3994496 6.0 buitenlands
## 1495 3995230 6.0 buitenlands
## 1498 3996684 57.0 buitenlands
## 1499 3997148 66.0 buitenlands
##
## [550 rows x 3 columns]
# Sla de studiepunten variabele op in vector
Studiepunten_vector = dfStudiepunten_studiejaar2["Studiepunten"]
# Rangschik de studiepunten
Rangnummers = sp.rankdata(dfStudiepunten_studiejaar2["Studiepunten"])
# Bepaal de index met daarin studenten met een Nederlandse vooropleiding
Vooropleiding_Nederlands = dfStudiepunten_studiejaar2["Vooropleiding"] == "Nederlands"
# Bereken gemiddelde rangnummers
N_positief = len(Studiepunten_vector[Vooropleiding_Nederlands == True])
print(N_positief)
## 950
Rangnummer_Nederlandse_vooropleiding = np.sum(Rangnummers[Vooropleiding_Nederlands == True]) / N_positief
N_negatief = len(Studiepunten_vector[Vooropleiding_Nederlands == False])
print(N_positief)
## 950
Rangnummer_buitenlandse_vooropleiding = np.sum(Rangnummers[Vooropleiding_Nederlands == False]) / N_negatief
# Print gemiddelde rangnummers
Rangnummer_Nederlandse_vooropleiding
## 829.7457894736842
Rangnummer_buitenlandse_vooropleiding
## 613.6209090909091
De Mann-Whitney U toets is uitgevoerd om te toetsen of het behaalde aantal studiepunten in het tweede jaar van de bachelor Business Administration hetzelfde is voor studenten met buitenlandse vooropleiding als voor studenten met Nederlandse vooropleiding. Uit de resultaten kan afgelezen worden dat er een significant verschil is tussen de verdelingen van het aantal studiepunten van studenten met een buitenlandse vooropleiding en met een Nederlandse vooropleiding, W = 6, p < 0,0001, r = 0,85. Er is een klein tot gemiddeld effect van het verschil in het land van vooropleiding op het aantal studiepunten. Het gemiddelde rangnummer is 829,75 (n=950) voor studenten met een Nederlandse vooropleiding en 613,62 (n=550) voor studenten met een buitenlandse vooropleiding. Studenten met een Nederlandse vooropleiding lijken dus een hoger aantal studiepunten te halen in het tweede jaar dan studenten met een buitenlandse vooropleiding.
Van Geloven, N. (13 maart 2018). Mann-Whitney U toets. Wiki Statistiek Academisch Medisch Centrum.↩
Laerd Statistics (2018). Mann-Whitney U Test using SPSS Statistics. https://statistics.laerd.com/spss-tutorials/mann-whitney-u-test-using-spss-statistics.php↩
Een ordinale variabele is een categorische variabele waarbij de categorieën geordend kunnen worden. Een voorbeeld is de variabele beoordeling met de categorieën Onvoldoende, Voldoende, Goed en Uitstekend.↩
Laerd Statistics (2018). Mann-Whitney U Test using SPSS Statistics. https://statistics.laerd.com/spss-tutorials/mann-whitney-u-test-using-spss-statistics.php↩
Onderscheidend vermogen, in het Engels power genoemd, is de kans dat de nulhypothese verworpen wordt wanneer de alternatieve hypothese ‘waar’ is.↩
Laerd Statistics (2018). Mann-Whitney U Test using SPSS Statistics. https://statistics.laerd.com/spss-tutorials/mann-whitney-u-test-using-spss-statistics.php↩
Field, A. (2013). Discovering statistics using IBM SPSS statistics. Sage.↩
Laerd Statistics (2018). Mann-Whitney U Test using SPSS Statistics. https://statistics.laerd.com/spss-tutorials/mann-whitney-u-test-using-spss-statistics.php↩
Onderscheidend vermogen, in het Engels power genoemd, is de kans dat de nulhypothese verworpen wordt wanneer de alternatieve hypothese ‘waar’ is.↩
Field, A. (2013). Discovering statistics using IBM SPSS statistics. Sage.↩
Field, A., Miles, J., & Field, Z. (2012). Discovering statistics using R. London: Sage publications.↩
Allen, P. & Bennett, K. (2012). SPSS A practical Guide version 20.0. Cengage Learning Australia Pty Limited.↩
Allen, P. & Bennett, K. (2012). SPSS A practical Guide version 20.0. Cengage Learning Australia Pty Limited.↩
De breedte van de staven van het histogram wordt vaak automatisch bepaald, maar kan handmatig aangepast worden. Aangezien de breedte van de staven bepalend zijn voor de indruk die de visualisatie geeft, is het verstandig om hier goed op te letten.↩
De breedte van de staven van het histogram worden hier automatisch bepaald, maar kunnen handmatig aangepast worden. Aangezien de breedte van de staven bepalend zijn voor de indruk die de visualisatie geeft, is het verstandig om hier goed op te letten.↩
In dit voorbeeld wordt uitgegaan van een waarschijnlijkheid van 95% c.q. een p-waardegrens van 0,05. De grens is naar eigen inzicht aan te passen; houd hierbij rekening met type I en type II fouten.↩