Correlaties berekenen
Correlaties berekenen uit handmatige data frames
Gelukkig hoef je in R deze formule niet handmatig in te vullen, maar kun je gebruik maken van de cor()
functie. De cor
functie neemt twee variabelen als argumenten op. In het kader van de zojuist gegeven voorbeelden zou het er in R bijvoorbeeld als volgt uit kunnen zien:
#Vector maken met dagen
dag <- c(1:13)
#Vector met ongelukken
ongelukken <- c(0,1,0,3,2,6,7,5,8,3,1,3,1)
#Vector met gladheid in scores 1 t/m 5
gladheid <- c(1,1,2,1,4,3,4,4,5,4,2,2,1)
#Ongelukken data frame
ongelukkenGladheid <- data.frame(dag,ongelukken,gladheid)
ongelukkenGladheid
## dag ongelukken gladheid
## 1 1 0 1
## 2 2 1 1
## 3 3 0 2
## 4 4 3 1
## 5 5 2 4
## 6 6 6 3
## 7 7 7 4
## 8 8 5 4
## 9 9 8 5
## 10 10 3 4
## 11 11 1 2
## 12 12 3 2
## 13 13 1 1
attach(ongelukkenGladheid)
cor(ongelukken,gladheid)
## [1] 0.7450994
detach(ongelukkenGladheid)
Zoals je kunt zien, een vrij hoge correlatie van 0.745
. Des te hoger de gladheid score, des te meer ongelukken.
De gladheidssscore is slechts een verzinsel om de intensiteit van gladheid aan te geven. Naar mijn weten bestaat er niet iets als een gladheidsscore.
Een correlatie berekenen uit bestaande data frames
Naast zelfgemaakte data frames, kunnen er natuurlijk ook correlaties berekend worden uit bestaande data frames. Ook hier gaan we de mtcars
dataset voor gebruiken.
We bekijken even de variabelen die er zijn.
names(mtcars)
## [1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear"
## [11] "carb"
attach(mtcars)
## The following object is masked from package:ggplot2:
##
## mpg
## The following objects are masked from mtcars (pos = 4):
##
## am, carb, cyl, disp, drat, gear, hp, mpg, qsec, vs, wt
Laten we de correlatie berekenen tussen hp
(horse power/paardenkracht) en mpg
(miles per gallon/zuinigheid).
cor(hp,mpg)
## [1] -0.7761684
De uitkomst is een zeer lage correlatie. Dit kunnen we interpreteren als een sterk negatief verband: Des te meer paardenkracht een auto heeft, des te minder zuinig deze auto is.