HOWTO · R
R의 표준 오차 계산
base R 공식과 plotrix 패키지의 std.error() 함수를 사용해 R에서 평균의 표준 오차를 계산하는 방법을 알아보세요.
이 페이지의 내용
R에서 평균의 표준 오차(SEM)를 계산하려면 표본 표준편차를 관측값 개수의 제곱근으로 나눕니다. base R만으로 직접 계산하거나 plotrix 패키지의 std.error()를 사용할 수 있습니다. 두 방법 모두 표본 평균의 불확실성을 추정하며, 가능한 모든 통계량의 표준 오차를 계산하는 것은 아닙니다.
평균의 표준 오차란?
평균의 표준 오차는 표집 모형에서 표본 평균이 모집단 평균을 얼마나 정확하게 추정하는지를 나타냅니다. 표준편차와는 다릅니다. 표준편차는 개별 관측값의 산포를 나타내고, SEM은 평균과 관련된 불확실성을 나타냅니다. 관측값이 n개이고 표본 표준편차가 s인 표본의 계산식은 다음과 같습니다.
[ \mathrm{SEM} = \frac{s}{\sqrt{n}} ]
R에서 sd()는 표본 표준편차를 반환하고, sqrt()는 제곱근을 계산하며, length()는 벡터의 값을 셉니다. 나누는 값은 표본 크기 자체가 아니라 표본 크기의 제곱근이어야 합니다. 이 계산식은 값들이 추정하려는 평균의 관측값이라고 가정합니다. 데이터에 결측값이 있다면 표준편차와 관측값 개수를 계산하기 전에 두 계산에서 일관된 방식으로 처리해야 합니다.
base R로 표준 오차 계산하기
base R만으로 이 계산에 필요한 모든 작업을 할 수 있습니다. 다음 예제는 관측값 다섯 개가 들어 있는 동일한 벡터에서 SEM을 계산합니다. data를 직접 사용할 숫자 표본으로 바꾸면 됩니다.
다음 예제를 실행합니다.
data <- c(5, 7, 8, 6, 9)
n <- length(data)
standard_error <- sd(data) / sqrt(n)
standard_error
[1] 0.7071068
이 다섯 값에서 결과는 SEM입니다. sd(data)가 s를 제공하고, sqrt(n)은 관측값 개수의 제곱근입니다. 벡터에 결측값이 있고 이를 제외하려면 먼저 na.omit(data)로 벡터를 필터링하는 등, 계산식의 두 항목에 동일한 관측값을 사용하세요.
코드는 SEM만 보고합니다. 신뢰구간을 만들거나 표본이 대표성을 갖는다고 입증하지는 않습니다. 그런 결론은 연구 설계와 데이터에 대한 가정에 달려 있습니다. 비율이나 회귀 계수처럼 다른 통계량을 다룰 때는 이 평균 전용 계산식을 그대로 적용하지 말고 해당 통계량에 맞는 표준 오차 공식이나 방법을 사용하세요.
plotrix로 표준 오차 계산하기
plotrix 패키지는 평균의 표준 오차를 계산하는 std.error()를 제공합니다. 필요하다면 R 환경에 패키지를 설치한 다음 library(plotrix)로 불러오세요. 이 방법을 실행하려면 패키지를 사용할 수 있어야 합니다. base R만으로는 std.error()를 제공하지 않습니다.
앞에서 사용한 것과 같은 벡터에 plotrix::std.error(data)를 호출하면 됩니다. 이 호출은 사용법을 보여 주는 예시이며, 별도로 실행해 확인한 결과는 아닙니다. 패키지가 설치되어 있으면 이 함수는 숫자 벡터를 받아 표준 오차를 반환합니다. 같은 관측값을 사용하면 이 계산을 base R 공식과 비교할 수 있습니다. 분석에서 두 값이 다르면 두 방법에 같은 값이 전달되었는지, 결측값도 같은 방식으로 처리했는지 확인하세요.
data <- c(5, 7, 8, 6, 9)일 때 표본 표준편차는 약 1.5811388이고 표본 크기는 5이므로, 공식으로 계산한 값은 base R 예제와 같습니다.
표시된 결과(별도로 실행해 확인하지 않음):
0.7071068
추가 패키지 없이 계산 단계를 직접 확인하거나 수정하고 싶다면 base R 공식을 선택하세요. 분석에 이미 패키지가 포함되어 있고 이름이 지정된 함수를 선호한다면 plotrix::std.error()를 선택하세요. 어느 방법을 사용하든 입력값이 설명하려는 평균에 해당하는 관측값인지 확인하고, 관측값을 수집한 방식에 비추어 SEM을 해석하세요.