Was ist was:

  • Varianz: Berechne die Differenz des Wertes zum Durchschnitt im Quadrat, summiere für alle Werte. Bilde dann den Durchschnitt. Hm. für unbiased wird nicht der Durchschnitt sondern geteilt durch n-1 genommen, man nennt das Bessel’s correction
  • Standardabweichung: Quadratwurzel der Varianz, meist Sigma.
  • Korrelations-Koeffizienten:
    • Mass für den Linearen Zusammenhang zwischen 2 Variablen
    • Wert zwischen -1 und 1.
      • 1=> Beide Variabelen hängen linear zusammen
      • -1=> Beide Variablen hängen negativ linear zusammen (d.h eine Steigerung der einen führt zu einer Minderung der anderen
      • 0 => kein Zusammenhang zwischen den Variablen
    • Multipliziere die Abweichung von X vom mean(X) mit der Abweichung von Y von mean(Y) am gleichen Punkt. Bilde dann die Summe dieser Produkte aller Variablen . Teile das ganze durch das Produkt der Standardabweichungen. Überlegung hierzu: Wir versuchen einen Zusammenhang zwischen der Länge und der Breite eines Schiffes zu finden. Wenn das Schiff nun eine grosse Abweichung vom Durchschnitt in der Länge hat, sollte es, so diese mit der Breite korreliert auch eine grosse Abweichung vom Durchschnitt in der Länge haben. (Wenn ein Schiff “besonders” gross ist, ist es auch “besonders” breit. “besonders” gross ist die Abweichung vom Durchschnitt von gross)

Beispielrechnung mit dem Schiffedatensatz aus der Wiki

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# Datensatz einlesen:
schiffe <- read.csv('/home/stephan/schiffe.csv' , header= TRUE , sep=';' ,
dec=',' )
 > summary(schiffe$Breite)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
   8.60   13.00   17.50   19.57   27.75   39.00
 > summary(schiffe$Länge)
    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
    85.0   128.5   174.0   164.9   190.0   271.0
	# Wir sind faul und sehen uns nur die ersten 10 Schiffe an
 > faul <- head(schiffe , 10 )
 > summary(faul$Breite)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
   13.00   20.25   31.00   26.00   31.75   32.00
  > summary(faul$Länge)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
   137.0   188.2   194.0   202.6   224.2   262.0 

Länge / Breite aus dem Schiffsdatensatz

Tabelle

1
2
3
4
5
6
kable(data.frame(faul$Breite , mean(faul$Breite) , faul$Breite -
mean(faul$Breite) , (faul$Breite - mean(faul$Breite))^2 ,faul$Länge,
mean(faul$Länge),faul$Länge - mean(faul$Länge), (faul$Länge -
mean(faul$Länge))^2  , (faul$Breite - mean(faul$Breite))*(faul$Länge -
mean(faul$Länge))) , format="markdown" , col.names =c("B" , 'mean(B)' ,
"diff", "diff^2", "L" , "mean(L)" , "diff" , "diff^2"  ,"Produkt"))
B mean(B) diff diff^2 L mean(L) diff diff^2 Produkt
31 26 5 25 187 203 -15.6 243 -78
31 26 5 25 242 203 39.4 1552 197
32 26 6 36 262 203 59.4 3528 356
32 26 6 36 216 203 13.4 180 80
32 26 6 36 195 203 -7.6 58 -46
31 26 5 25 227 203 24.4 595 122
20 26 -6 36 193 203 -9.6 92 58
17 26 -9 81 175 203 -27.6 762 248
21 26 -5 25 192 203 -10.6 112 53
13 26 -13 169 137 203 -65.6 4303 853

So wenn wir davon den Korrelationskoeffizienten berechnen wollen müssen wir für jede Werte das Produkt aus Breite-Mean(breite) und Länge-Mean(Länge) berechnen und aufsummieren und dann den Durchschnitt ziehen:

1
2
3
4
5
6
7

> (faul$Breite - mean(faul$Breite)) * (faul$Länge -mean(faul$Länge))
 [1] -78 197 356  80 -46 122  58 248  53 853
> sum( (faul$Breite - mean(faul$Breite)) * (faul$Länge -mean(faul$Länge)))
[1] 1844
> mean ((faul$Breite - mean(faul$Breite)) * (faul$Länge  -mean(faul$Länge)))
[1] 184

Dann das durch das Produkt der Standardabweichungen teilen:

1
2
3
4
5
6
7
8
> sd(faul$Breite)
[1] 7.4
> sd (faul$Länge)
[1] 36
> sd(faul$Breite)* sd(faul$Länge)
[1] 264
> 184/264
[1] 0.7

Direkt in R ausgerechnet:

1
2
> cor(faul$Breite, faul$Länge)
[1] 0.78