R에서 Kolmogorov-Smirnov 검정의 검정력을 계산할 수 있습니까?


10

R에서 양면 Kolmogorov Smirnov 테스트를위한 전력 분석을 수행 할 수 있습니까?

ks.test ()를 사용하여 두 개의 경험적 분포가 다른지 테스트하고 전력 분석을 추가하려고합니다.

R에서 KS 테스트에 대한 기본 제공 전력 분석을 찾을 수 없습니다. 제안 사항이 있습니까?

편집 : 이들은 내 데이터와 거의 비슷한 무작위로 생성 된 분포입니다 (지수 분포에 대한 실제 표본 크기 및 추정 감쇠율)

set.seed(100)
x <- rexp(64, rate=0.34)
y <- rexp(54,rate=0.37)

#K-S test: Do x and y come from same distribution?
ks.test(x,y)

이 데이터는 서로 다른 두 그룹의 신체 크기를 측정 한 것입니다. 나는 두 그룹이 본질적으로 동일한 분포를 가지고 있음을 보여주고 싶지만, 표본 크기에 따라 말할 힘이 있는지 공동 연구자에게 물었습니다. 나는 여기서 지수 분포에서 무작위로 도출했지만 실제 데이터와 가깝습니다.

지금까지 나는 양측 KS 검정에 기초한 이러한 분포에 유의 한 차이가 없다고 말했다. 또한 두 분포를 플로팅했습니다. x와 y에 대한 표본 크기와 붕괴율을 고려할 때 그러한 진술을 할 힘이 있음을 어떻게 나타낼 수 있습니까?


4
전력은 많은 것들에 의존 할 것이기 때문에 두 샘플 테스트에 내장되지 않은 이유입니다. 주어진 상황에 대해 시뮬레이션 할 수 있습니다. 그렇다면 : 권력은 상황에 대해 어떤 가정을했을까요? 어떤 대안 또는 대안의 순서에 대하여? 예를 들어, 스케일 시프트 대안 세트에 대해 지수 분포 데이터의 전력 곡선을 계산 (시뮬레이션) 할 수 있습니다. 또는 위치 이동에 대해 정규 전력을 계산할 수 있습니다. 또는 모양 매개 변수를 변경하면 Weibull에서 전력을 계산할 수 있습니다. 추가 정보가 있습니까?
Glen_b-복지 주 모니카

실제로 검정력을 계산하려면 표본 크기도 필요합니다. 특정 대안에 대해 지정된 검정력으로 주어진 표본 크기를 식별하려는 경우 루트 찾기를 통해 수행 할 수 있지만 종종 간단한 접근법으로 요점을 찾을 수 있습니다 (일반적으로 몇 가지 표본 크기를 시도하면 매우 가깝습니다. ).
Glen_b-복지 주 모니카

어떤 변수가 측정되고 있습니까? 이 시간입니까?
Glen_b-복지 주 모니카

@Glen_b 시간이 아닙니다. 그것들은 두 개의 다른 그룹에서 신체 크기의 측정입니다. 두 그룹이 본질적으로 동일한 분포를 가지고 있음을 보여주고 싶지만 표본 크기를 기반으로 말할 수있는 권한이 있는지 물었습니다.
Sarah

1
아! 그것은 당신의 질문에 도움이 될 수있는 두 가지 유용한 맥락입니다. 따라서 개념적으로 약간의 차이를 식별 할 수있는 힘이 합리적이라는 것을 보여 주면 차이가 작다는 표시로 거부하지 못할 수 있습니다. 그렇습니다. 사전 전력 분석은 그러한 주장을하는 데 도움이 될 수 있습니다. 사실 이후 아마도 차이가 실제로 크기가 작았 음을 나타내는 두 가지 샘플 cdfs의 플롯으로 척도 변화의 추정치 (및 신뢰 구간)와 같은 것에 더 집중할 것입니다.
Glen_b-복지국 Monica

답변:


16

지수 스케일 편이 대안에 대한 힘을 찾는 것은 상당히 간단합니다.

그러나 나는 당신이 힘이 무엇인지를 계산 하기 위해 데이터 에서 계산 값을 사용해야한다는 것을 모르겠습니다 . 이러한 종류의 사후 전력 계산은 반 직관적 인 (그리고 아마도 오도하는) 결론을 초래하는 경향이 있습니다.

유의 수준과 같은 힘은 사실 전에 다루는 현상입니다. 고려해야 할 합리적인 대안 세트와 바람직한 효과 크기를 결정하기 위해 사전 이해 (이론, 추론 또는 이전 연구 포함)를 사용합니다.

또한 다양한 다른 대안을 고려할 수도 있습니다 (예를 들어, 감마 패밀리 내에 지수를 포함하여 다소 치우친 사례의 영향을 고려할 수 있음).

전력 분석으로 대답하려는 일반적인 질문은 다음과 같습니다.

1) 특정 효과 크기 또는 효과 크기 세트 *에서 주어진 샘플 크기에 대한 검정력은 무엇입니까?

2) 표본 크기와 검정력이 주어지면 얼마나 큰 효과를 탐지 할 수 있습니까?

3) 특정 효과 크기에 대해 원하는 검정력이 주어지면 어떤 샘플 크기가 필요합니까?

* (여기서 '효과 크기'는 일반적으로 의도 된 것으로서, 예를 들어 특정 수단의 비율 또는 수단의 차이가 반드시 표준화 될 필요는 없음).

분명히 샘플 크기가 이미 있으므로 (3)이 아닙니다. 사례 (2) 또는 사례 (1)을 합리적으로 고려할 수 있습니다.

나는 사례 (1)을 제안한다 (이것은 또한 사례 (2)를 다루는 방법을 제공한다).

사례 (1)에 대한 접근 방식을 설명하고 사례 (2)와의 관계를 확인하려면 다음과 같이 특정 예를 고려하십시오.

  • 스케일 시프트 대안

  • 지수 모집단

  • 64와 54의 두 샘플에서 샘플 크기

표본 크기가 다르기 때문에 표본 중 하나의 상대 확산이 1보다 작고 큰 경우를 고려해야합니다 (동일한 크기 인 경우 대칭 고려 사항으로 인해 한쪽 만 고려할 수 있음). 그러나 크기가 거의 비슷하기 때문에 효과가 매우 작습니다. 어쨌든 샘플 중 하나의 매개 변수를 수정하고 다른 샘플을 변경하십시오.

그래서 한 가지는 :

미리:

choose a set of scale multipliers representing different alternatives
select an nsim (say 1000)
set mu1=1

계산을 수행하려면

for each possible scale multiplier, kappa 
  repeat nsim times
    generate a sample of size n1 from Exp(mu1) and n2 from Exp(kappa*mu1)
    perform the test
  compute the rejection rate across nsim tests at this kappa

R에서 나는 이것을했다 :

alpha = 0.05
n1 = 54
n2 = 64
nsim = 10000
s = c(1.1,1.2,1.5,2,2.5,3) # set up grid for kappa
s = c(1/rev(s),1,s)        #  also below and at 1
rr = array(NA,length(s))   # to hold rejection rates

for(i in seq_along(s)) rr[i]=mean(replicate(nsim,
                                    ks.test(rexp(n1,1),rexp(n2,s[i]))$p.value)<alpha
                                 )

plot(rr~s,log="x",ylim=c(0,1),type="n") #set up plot
points(rr~rev(s),col=3) # plot the reversed case to show the (tiny) asymmetry+noise
points(rr~s,col=1) # plot the "real" case last 
abline(h=alpha,col=8,lty=2) # draw in alpha

다음과 같은 힘 "곡선"을 제공

여기에 이미지 설명을 입력하십시오

x 축은 로그 스케일에 있고 y 축은 거부율입니다.

여기서 말하기는 어렵지만 검은 점은 왼쪽보다 오른쪽보다 약간 높습니다 (즉, 더 큰 샘플의 스케일이 작을수록 부분적으로 더 큰 힘이 있습니다).

역 정규 cdf를 기각 율의 변환으로 사용하여 변환 된 기각 률과 로그 카파 (카파는 s플롯에 있지만 x 축은 로그 스케일 됨) 사이의 관계를 거의 선형 (0 근처 제외)으로 만들 수 있습니다 ), 시뮬레이션 횟수는 노이즈가 매우 적을 정도로 충분히 높았습니다. 현재 목적으로는 무시할 수 있습니다.

따라서 우리는 선형 보간을 사용할 수 있습니다. 아래는 샘플 크기에서 50 % 및 80 % 검정력에 대한 대략적인 효과 크기입니다.

여기에 이미지 설명을 입력하십시오

다른 쪽의 효과 크기 (대규모 그룹이 더 작은 규모를 가짐)는 그 크기에서 약간만 이동하지만 (소수 적으로 작은 효과 크기를 선택할 수 있음) 차이가 거의 없기 때문에 요점을 밝히지 않습니다.

따라서 테스트는 (1 비율의 비율에서) 실질적인 차이는 있지만 작은 것은 아닙니다.


이제 몇 가지 의견을 들겠습니다. 가설 검정이 특히 관심이있는 근본적인 질문과 관련이 있다고 생각하지 않으며 ( 그들은 매우 유사합니까? ) 결과적으로 이러한 검정력 계산은 해당 질문과 직접적으로 관련이있는 것을 알려주지 않습니다.

"본질적으로 동일하다"는 것이 실제로 의미하는 바를 운영상으로 미리 지정하여보다 유용한 질문을 해결한다고 생각합니다. 있음 - 통계 활동 합리적 추진 - 데이터의 의미있는 분석을 초래할 것이다.


정말 고맙습니다! 이것은 정말 도움이되며 대단히 감사합니다.
Sarah

0

Kolmogorov-Smirnov는 비모수 적이므로 정의에 따라 적용 가능한 전력 분석이 없습니다. 어떤 종류의 추정을 위해서는 배경 모델을 가정하여 비모수 적 세계에서 우회해야합니다. 샘플 크기, MDE 또는 검정력 (예 : 사용자) 두 개를 고치거나 선택하고 세 번째를 계산하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.