R에서 가중 표준 편차를 계산하는 방법


가중 표준편차는 데이터세트의 일부 값이 다른 값보다 가중치가 높은 경우 데이터세트 내 값의 분산을 측정하는 유용한 방법입니다.

가중 표준 편차를 계산하는 공식은 다음과 같습니다.

금:

  • N:관측치
  • M: 0이 아닌 가중치의 개수
  • w i : 가중치 벡터
  • x i : 데이터 값의 벡터
  • x : 가중 평균

R에서 가중 표준 편차를 계산하는 가장 쉬운 방법은 다음 구문을 사용하는 Hmisc 패키지의 wt.var() 함수를 사용하는 것입니다.

 #define data values
x <- c(4, 7, 12, 13, ...)

#define weights
wt <- c(.5, 1, 2, 2, ...)

#calculate weighted variance
weighted_var <- wtd. var (x, wt)

#calculate weighted standard deviation
weighted_sd <- sqrt(weighted_var)

다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.

예 1: 벡터의 가중 표준 편차

다음 코드는 R의 단일 벡터에 대한 가중 표준 편차를 계산하는 방법을 보여줍니다.

 library (Hmisc)

#define data values 
x <- c(14, 19, 22, 25, 29, 31, 31, 38, 40, 41)

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2, 3, 2)

#calculate weighted variance 
weighted_var <- wtd. var (x, wt)

#calculate weighted standard deviation
sqrt(weighted_var)

[1] 8.570051

가중 표준편차는 8.57 로 나타났습니다.

예 2: 데이터 프레임의 열에 대한 가중 표준 편차

다음 코드는 R의 데이터 프레임 열에 대한 가중 표준 편차를 계산하는 방법을 보여줍니다.

 library (Hmisc)

#define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2)

#calculate weighted standard deviation of points
sqrt(wtd. var (df$points, wt))

[1] 0.6727938

포인트 열의 가중 표준 편차는 0.673 입니다.

예 3: 데이터 프레임의 여러 열에 대한 가중 표준 편차

다음 코드는 R의 sapply() 함수를 사용하여 데이터 프레임의 여러 열에 대한 가중 표준 편차를 계산하는 방법을 보여줍니다.

 library (Hmisc)

#define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2)

#calculate weighted standard deviation of points and wins
sapply(df[c(' wins ', ' points ')], function(x) sqrt(wtd. var (x, wt)))

     win points 
4.9535723 0.6727938 

승리 열의 가중 표준 편차는 4.954 이고 점수 열의 가중 표준 편차는 0.673 입니다.

추가 리소스

Excel에서 가중 표준 편차를 계산하는 방법
R에서 표준편차를 계산하는 방법
R의 변동 계수를 계산하는 방법
R에서 범위를 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다