CURSUS R statistic

 

 

Uitleg Script Frequentieverdeling nominale variabele.

Het volledige script ziet er als volgt uit:

Voor bepaalde regels staat het # teken. Het # teken geeft aan dat deze regel niet uitgevoerd wordt, maar gebruikt wordt om commentaar en uitleg te geven over de regels die volgen.

De eerste regel waarin een commando staat dat uitgevoerd wordt is:

variabele = *****

Je kent dan aan Variabele de naam toe van de Variabele waarvan je een frequentietabel wilt maken. In de rest van het script wordt waar variabele staat de naam die naam ingevuld. Om te zien hoe het script regel voor regel werkt, vul hier b.v. Opleiding in.

variabele = Opleiding

Door de cursor in deze regel te plaatsen en op Run (rechts boven) te klikken of "CTRL Enter" wordt de regel uitgevoerd. Onderin het scherm komt dit te staan.

> variabele=Opleiding

Klik daarna binnen de volgende commando regel:

FrequentieTabel=table(variabele)

en klik weer op run. In de variabele FrequentieTabel wordt een tabel opgeslagen. Je kunt zien wat de inhoud is van die tabel door: FrequentieTabel uit te voeren in het onderste scherm, als volgt:

> FrequentieTabel=table(variabele)
> FrequentieTabel

Het volgende commando bestaat uit twee delen.

Ten eerste de prop.table functie. Die maakt van de aantallen in frequentieTabel percentages.
Standaard worden de percentages uitgerekend in 9 cijfers na de komma. Daarom is de round functie gebruikt om af te ronden op 2 cijfers na de komma.

PercentFrequentieTabel=round( prop.table(FrequentieTabel),digits = 2)

Voer je dit weer uit, dan krijg je het volgende resultaat:

> PercentFrequentieTabel=round(prop.table(FrequentieTabel),digits = 2)
> PercentFrequentieTabel

Het volgende Commando is : LabelsRijen=names(FrequentieTabel)

Dit doet het volgende:

> LabelsRijen=names(FrequentieTabel)
> LabelsRijen

De functie names geeft van de FrequentieTabel de namen (en niet de waarden). Deze moeten komen staan in de rijen.

> LabelsKolommen=c("Aantal", "Percentage")
> LabelsKolommen

[1] "Aantal" "Percentage"

De te maken frequentietabel heeft twee kolommen, waar bij de eerste tabel "Aantal" boven moet staan, en bij de tweede "Percentage". Wil je iets anders er boven hebben staan, dan kun je gewoon hetgeen tussen de "" staat veranderen.

Het laatste commando is het matrix commando:

matrix(c(FrequentieTabel,PercentFrequentieTabel),nrow = nlevels(variabele),ncol = 2,dimnames = list(LabelsRijen,LabelsKolommen))

Een matrix bestaat uit rijen en kolommen. De inhoud bestaat uit de samenvoeging van de tabellen FrequentieTabel en PercentFrequencieTabel.

> c(FrequentieTabel,PercentFrequentieTabel)

Deze getallen staan nog achter elkaar. De matrix functie plaatst deze in een matrix van een aantal rijen (nrows) en een aantal kolommen (ncol). ncol is hier twee want we hebben twee kolommen t.w. "aantal" en "Percentage".
Het aantal rijen is afhankelijk van het aantal waarden van de variabele. B.v. de Variabele geslacht heeft maar twee waarden (man, vrouw), maar de variabele opleiding heeft vier waarden zoals je hierboven ziet. De functie nlevels bepaald het aantal waarden.

Met dimnames kun je rondom de matrix de labels plaatsen die we eerder gedefinieerd hebben. Het resultaat van de matrix functie is:

> matrix(c(FrequentieTabel,PercentFrequentieTabel),nrow = nlevels(variabele),ncol = 2,dimnames = list(LabelsRijen,LabelsKolommen))

Sla dit script niet zomaar op als je er veranderingen in hebt aangebracht. Mocht dat toch een keer gebeuren dan kun je altijd van de site het origineel ophalen.