R에서 grubbs의 테스터를 실행하는 방법


Grubbs 테스트는 데이터 세트에서 이상값의 존재를 식별하는 데 사용할 수 있는 통계 테스트입니다.

이 검정을 사용하려면 데이터 세트가 대략적인 정규 분포를 가져야 하며 최소 7개의 관측치를 포함해야 합니다.

이 튜토리얼에서는 R에서 Grubbs 테스트를 수행하여 데이터세트의 이상값을 검색하는 방법을 설명합니다.

예: R의 Grubbs 테스트

R에서 Grubbs 테스트를 수행하려면 다음 구문을 사용하는 Outliers 패키지의 grubbs.test() 함수를 사용할 수 있습니다.

grubbs.test(x, 유형 = 10, 반대 = FALSE, 양면 = FALSE)

금:

  • x: 데이터 값의 숫자형 벡터
  • 유형: 10 = 최대값이 이상값인지 테스트, 11 = 최소값과 최대값이 이상값인지 테스트, 20 = 꼬리에 2개의 이상값이 있는지 테스트
  • 반대: 평균과 가장 큰 차이가 있는 값이 아니라 반대 값을 확인하려는지 여부를 나타내는 논리(가장 낮은 값, 가장 의심스러운 값이 가장 높은 값 등)
  • 양측: 검사를 양측으로 처리해야 하는지 여부를 나타내는 논리값

이 테스트에서는 다음 두 가지 가설을 사용합니다.

H 0 (귀무가설): 데이터에 이상치가 없습니다.

HA (대립가설): 데이터에 특이치가 있습니다.

다음 예에서는 Grubbs 테스트를 수행하여 데이터 세트의 최대값이 이상값인지 확인하는 방법을 보여줍니다.

 #load Outliers package
library(Outliers)

#createdata
data <- c(5, 14, 15, 15, 14, 13, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40)

#perform Grubbs' Test to see if '40' is an outlier
grubbs.test(data)

# Grubbs test for one outlier
#
#data:data
#G = 2.65990, U = 0.55935, p-value = 0.02398
#alternative hypothesis: highest value 40 is an outlier

검정의 검정 통계량은 G = 2.65990 이고 해당 p-값은 p = 0.02398 입니다. 이 값은 0.05보다 작으므로 귀무가설을 기각하고 최대값 40이 특이치라는 결론을 내립니다.

대신에 “5”의 가장 낮은 값이 이상치인지 테스트하려면 reverse=TRUE 명령을 사용할 수 있습니다.

 #perform Grubbs' Test to see if '5' is an outlier
grubbs.test(data, opposite= TRUE )

# Grubbs test for one outlier
#
#data:data
#G = 1.4879, U = 0.8621, p-value = 1
#alternative hypothesis: lowest value 5 is an outlier

검정 통계량은 G = 1.4879 이고 해당 p-값은 p = 1 입니다. 이 값은 0.05 이상이므로 귀무가설을 기각할 수 없습니다. 최소값 “5”가 특이치라고 말할 수 있는 충분한 증거가 없습니다.

마지막으로 데이터 세트의 한쪽 끝에 40과 42라는 두 개의 큰 값이 있다고 가정합니다. 이 값이 이상값인지 테스트하기 위해 Grubbs 테스트를 수행하고 type=20을 지정할 수 있습니다.

 #create dataset with two large values at one end: 40 and 42
data <- c(5, 14, 15, 15, 14, 13, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40, 42) 

#perform Grubbs' Test to see if both 40 and 42 are outliers
grubbs.test(data, type=20)

# Grubbs test for two outliers
#
#data: data
#U = 0.38111, p-value = 0.01195
#alternative hypothesis: highest values 40, 42 are outliers

검정의 p-값은 0.01195 입니다. 이 값은 0.05보다 작으므로 귀무가설을 기각하고 값 40과 42가 모두 이상치라고 말할 수 있는 충분한 증거가 있다고 결론을 내릴 수 있습니다.

이상치를 처리하는 방법

Grubbs 테스트가 데이터 세트에서 이상값을 식별하는 경우 다음과 같은 몇 가지 옵션이 있습니다.

1. 값이 오타나 데이터 입력 오류가 아닌지 다시 확인하세요. 때로는 데이터 세트에서 이상치로 나타나는 값이 단순히 데이터 입력 중 개인이 작성한 오타일 수도 있습니다. 추가 결정을 내리기 전에 돌아가서 값이 올바르게 입력되었는지 확인하세요.

2. 이상값에 새 값을 할당합니다 . 이상값이 오타나 데이터 입력 오류로 인해 발생한 것으로 판명되면 데이터 세트의 평균 이나 중앙값 과 같은 새 값을 할당하기로 결정할 수 있습니다.

3. 이상값을 제거합니다. 값이 실제로 이상값인 경우 전체 분석에 상당한 영향을 미칠 경우 해당 값을 제거하도록 선택할 수 있습니다.

의견을 추가하다

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