Hoe de geclusterde standaarddeviatie in r te berekenen
Een gepoolde standaarddeviatie is eenvoudigweg een gewogen gemiddelde van de standaarddeviaties van twee of meer onafhankelijke groepen.
In de statistieken komt het meestal voor in de t-test met twee steekproeven , die wordt gebruikt om te testen of de gemiddelden van twee populaties al dan niet gelijk zijn.
De formule voor het berekenen van een geclusterde standaarddeviatie voor twee groepen is:
Gepoolde standaardafwijking = √ (n 1 -1)s 1 2 + (n 2 -1)s 2 2 / (n 1 +n 2 -2)
Goud:
- n1 , n2 : Steekproefgrootte voor respectievelijk groep 1 en groep 2.
- s 1 , s 2 : Standaardafwijking voor respectievelijk groep 1 en groep 2.
De volgende voorbeelden tonen twee methoden voor het berekenen van een geclusterde standaardafwijking tussen twee groepen in R.
Methode 1: Bereken handmatig de geclusterde standaarddeviatie
Stel dat we de volgende gegevenswaarden hebben voor twee steekproeven:
- Monster 1 : 6, 6, 7, 8, 8, 10, 11, 13, 15, 15, 16, 17, 19, 19, 21
- Monster 2 : 10, 11, 13, 13, 15, 17, 17, 19, 20, 22, 24, 25, 27, 29, 29
De volgende code laat zien hoe u de gepoolde standaardafwijking tussen deze twee steekproeven kunt berekenen:
#define two samples data1 <- c(6, 6, 7, 8, 8, 10, 11, 13, 15, 15, 16, 17, 19, 19, 21) data2 <- c(10, 11, 13, 13, 15, 17, 17, 19, 20, 22, 24, 25, 27, 29, 29) #find sample standard deviation of each sample s1 <- sd (data1) s2 < -sd (data2) #find sample size of each sample n1 <- length (data1) n2 <- length (data2) #calculate pooled standard deviation pooled <- sqrt (((n1-1)*s1^2 + (n2-1)*s2^2) / (n1+n1-2)) #view pooled standard deviation pooled [1] 5.789564
De gepoolde standaarddeviatie blijkt 5,789564 te zijn.
Methode 2: Bereken de geclusterde standaarddeviatie met behulp van een pakket
Een andere manier om de gepoolde standaardafwijking tussen twee monsters in R te berekenen, is door de functie sd_pooled() uit het effectize- pakket te gebruiken.
De volgende code laat zien hoe u deze functie in de praktijk kunt gebruiken:
library (effectsize) #define two samples data1 <- c(6, 6, 7, 8, 8, 10, 11, 13, 15, 15, 16, 17, 19, 19, 21) data2 <- c(10, 11, 13, 13, 15, 17, 17, 19, 20, 22, 24, 25, 27, 29, 29) #calculate pooled standard deviation between two samples sd_pooled(data1, data2) [1] 5.789564
De gepoolde standaarddeviatie blijkt 5,789564 te zijn.
Merk op dat dit overeenkomt met de waarde die we in het vorige voorbeeld handmatig hebben berekend.
Aanvullende bronnen
De volgende tutorials bieden meer informatie over het berekenen van een geclusterde standaarddeviatie:
Een inleiding tot geclusterde standaarddeviatie
Geclusterde standaarddeviatiecalculator