CURSUS R statistic

 

 

Geclusterd staafdiagram.

Staafdiagrammen worden gemaakt op basis van tabellen. Belangrijk is de keuze welke van de twee variabelen je op de X-as wilt hebben. Daarvoor maak je de volgende keuze.

> FrequentieTabel=table(Variabele in staven,Variabele X-as)

Stel je wilt kijken hoe de verdeling van mannen en vrouwen over de opleidingen is dan maken we een nieuwe variabele aan "FrequentieTabel" en wel als volgt:

> FrequentieTabel=table(Opleiding,Geslacht)
> FrequentieTabel

                                          Geslacht
Opleiding                             man vrouw
   Bedrijfskunde /MER                26      15
   Facility Management              43       68
   Human Resource Management 27       39
   Logistiek                              36       15

Van deze tabel kun je met het commando barplot() als volgt een geclusterd staafdiagram maken.

> barplot(FrequentieTabel)

De aantallen mannen en vrouwen zijn ongeveer gelijk, daarom zijn de verdelingen per man en vrouw goed met elkaar te vergelijken, en is te zien of er wel of niet een groot verschil is in de verdeling van mannen of vrouwen per opleiding.

Om altijd de staven goed met elkaar te kunnen vergelijken gebruik je percentages, en wel zo dat iedere staaf precies 100% is. Percentages krijg je met het prop.table commando.

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

De twee in het commando prop.table zorgt ervoor dat de percentages per kolom op 100% komen. Zou je een 1 invullen, dan krijg je rijpercentages. Vul je niets in dan krijg je celpercentages.

Een barplot van de PercentFrequencieTabel levert op:

> barplot(PercentFrequentieTabel)

Deze grafiek kun je niet zo opnemen in je verslag. Daarom moet die aangepast worden. Ten eerste ga je decimale getallen vervangen door percentages, afgerond op 1 cijfer na de komma.

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

Dit geeft de tabel

Ga na.

Hiervan kunnen we een barplot maken, maar niet nadat we eerst de grafiek voorzien hebben van titels.

main = "Verdeling van opleidingen per geslacht" (titel grafiek)
xlab = "Geslacht" (titel X-as)
Ylab = "Percentage" (titel Y-as)

In het commando barplot ziet dat er als volgt uit:

> barplot(PercentFrequentieTabel,main = "Verdeling van de opleidingen per geslacht",xlab = "Geslacht",ylab = "Percentage")

en in de grafiek:

Er is nog een probleem. De grafiek is niet voorzien van legenda, zodat we niet weten welke kleur, welke opleiding is. Dit kunnen we als volgt oplossen met het rownames commando.

> rownames(PercentFrequentieTabel)

"Bedrijfskunde /MER" "Facility Management" "Human Resource Management" "Logistiek"

Breiden we het vorige commando uit met legend.text, dan krijgen we een grafiek met legenda.

> barplot(PercentFrequentieTabel,main = "Verdeling van de opleidingen per geslacht",xlab = "Geslacht",ylab = "Percentage",legend.text = row.names(PercentFrequentieTabel))

en ziet de grafiek er als volgt uit:

Eigenlijk wil je liever weten hoe mannen en vrouwen per opleiding verdeeld zijn. Dat wil zeggen dat in de staven niet de opleidingen staan, maar geslacht en dat op de X-as de opleidingen staan.

Wil je dat doen dan begin je met een tweede frequentietabel te maken, maar nu opleiding en geslacht verwisselt. Daarna maak je weer een prop.table ervan. Hierin maak je percentages, rond jeaf en maak je een mooie barplot. Hieronder volgen de commando's en het resultaat.

> FrequentieTabel2=table(Geslacht,Opleiding)
> PercentFrequentieTabel2=prop.table(FrequentieTabel2,2)
> PercentFrequentieTabel2=round(prop.table(FrequentieTabel2,2)*100,digits = 1)
> barplot(PercentFrequentieTabel2,main = "Verdeling van geslacht per opleidingen",xlab = "Opleiding",ylab = "Percentage",legend.text = row.names(PercentFrequentieTabel2))

Hierin is duidelijk te zien dat bij de ene opleiding veel mannen zijn dan bij de andere.

Wil je een kleurtje dan kan dat met "col=c("red","blue")".

> barplot(PercentFrequentieTabel2,main = "Verdeling van geslacht per opleidingen",xlab = "Opleiding",ylab = "Percentage",legend.text = row.names(PercentFrequentieTabel2),col = c("red","blue"))

Zoek eventueel via de help van R informatie op over kleuren. In principe is iedere computer kleur te krijgen.
Probeer maar col=c("#ccccff","#9966ff"), waarbij de # notatie de notatie is die bij veel tekenpakketten gebruikt wordt.

Iedere staaf is in tweeën onderverdeeld, vandaar dat er maar twee kleuren achter de c staan. In de eerste grafiek bestonden de staven uit de vier opleidingen. Het commando zou dan b.v. als volgt kunnen zijn.

> barplot(PercentFrequentieTabel,main = "Verdeling van geslacht per opleidingen",xlab = "Opleiding",ylab = "Percentage",legend.text = row.names(PercentFrequentieTabel),col = c("#ccccff","#9999ff","#9933ff","#6600ff"))

Met de volgende grafiek: