개별 데이터가있는 Kolmogorov-Smirnov : R에서 dgof :: ks.test를 올바르게 사용하는 방법은 무엇입니까?


23

초보자 질문 :

두 개의 개별 데이터 세트가 동일한 분포에서 나온 것인지 테스트하고 싶습니다. Kolmogorov-Smirnov 테스트가 제게 제안되었습니다.

Conover ( Practical Nonparametric Statistics , 3d)는 Kolmogorov-Smirnov Test가이 목적으로 사용될 수 있다고 말하지만, 그 동작은 불연속 분포와 함께 "보수적"이며, 이것이 무엇을 의미하는지 잘 모르겠습니다.

다른 질문에 대한 DavidR의 의견 은 "... 여전히 KS 통계에 기초하여 레벨 α 테스트를 할 수 있지만, 시뮬레이션과 같은 임계 값을 얻는 다른 방법을 찾아야합니다."

dgof R 패키지 ( article , cran )의 ks.test () 버전은 stats 패키지의 기본 버전 ks.test ()에없는 일부 기능을 추가합니다. 무엇보다도 dgof :: ks.test에는이 매개 변수가 포함됩니다.

시뮬레이션 값 : 이산 적합도 검정에 대해서만 몬테카를로 시뮬레이션으로 p- 값을 계산할지 여부를 나타내는 논리.

DavidR이 제안한 것을 달성하기 위해 simulate.p.value = T의 목적입니까?

그것이 그렇더라도 실제로 2 샘플 테스트에 dgof :: ks.test를 사용할 수 있는지 확실하지 않습니다. 연속 분포에 대한 2- 표본 검정 만 제공하는 것 같습니다.

y가 숫자 인 경우 x와 y가 동일한 연속 분포에서 도출되었다는 귀무 가설에 대한 2- 표본 검정이 수행됩니다.

대안 적으로, y는 연속 (누적) 분포 함수 (또는 그러한 함수)를 명명하는 문자열이거나 이산 분포를 제공하는 ecdf 함수 (또는 stepfun 클래스) 일 수 있습니다. 이 경우, x를 생성 한 분포 함수가 분포 y ... 인 경우 null에서 1- 표본 검정이 수행됩니다.

(배경 세부 사항 : 엄밀히 말하면, 기본 분포는 연속적이지만 데이터는 소수의 점에 매우 가깝습니다. 각 점은 시뮬레이션의 결과이며 -1과 1 사이의 10 또는 20의 실수입니다. 1. 시뮬레이션이 끝날 무렵, 그 숫자는 거의 항상 .9 또는 -.9에 매우 가깝기 때문에 몇 개의 값을 중심으로 모여서 이산 값으로 취급하고 있습니다. 데이터가 잘 알려진 분포를 따른다고 생각하는 이유.)

조언?


난 그냥 박사 G의 코멘트 발견 여기에 그 ks.boot는 내가 필요로 무엇을 제안하지만, 난 여전히의 ks.test 시뮬레이션 옵션이 작동 할 dgof :: 여부를 궁금해하고 무엇을 "convervative"를 의미한다.
화성

답변:


16

이것은 @jbrucks 확장에 대한 답변이지만 원본에도 대답합니다.

두 표본이 동일한 모집단 / 분포에서 나온 것인지 또는 차이가 있는지에 대한 일반적인 테스트는 순열 테스트입니다. 관심있는 통계를 선택하십시오. 이는 KS 검정 통계 또는 평균의 차이 또는 중앙값의 차이 또는 분산의 비율 또는 ... 일 수 있습니다 (질문에 가장 의미있는 것이 무엇이든, 가능한 조건에서 시뮬레이션을 수행하여 볼 수 있음) 어떤 통계가 최상의 결과를 제공하는지 확인하고 원래 2 개의 표본에 대한 통계를 계산합니다. 그런 다음 그룹간에 관측치를 무작위로 치환하고 (모든 데이터 포인트를 하나의 큰 풀로 그룹화 한 다음 원래 샘플과 동일한 크기로 2 개의 그룹으로 무작위로 분할) 치환 된 샘플에 대한 관심 통계를 계산합니다. 이것을 여러 번 반복하십시오. 표본 통계 분포는 귀무 분포를 형성하고 원래 통계를이 분포와 비교하여 검정을 구성합니다. 귀무 가설은 평균 / 중간 값 등이 아니라 분포가 동일하다는 것입니다. 같다.

분포가 동일하다고 가정하고 싶지 않지만 평균 / 중간 값 등의 차이를 테스트하려는 경우. 부트 스트랩을 할 수 있습니다.

데이터가 어떤 분포에서 비롯된 것인지 (또는 최소한 분포를 기꺼이 알고 싶은 경우) 모수의 동등성에 대한 유사도 테스트를 수행 할 수 있습니다 (두 그룹에 대해 단일 모수 세트로 모형을 모형과 비교). 별도의 매개 변수 세트). 유사도 비율 검정은 일반적으로 많은 경우에 적합한 카이 제곱 분포 (비대칭)를 사용하지만 작은 표본 크기를 사용하거나 경계 근처의 매개 변수를 테스트하는 경우 (예 : 분산은 0) 근사값은 그렇지 않을 수 있습니다. 좋은 순열 분포를 얻기 위해 순열 테스트를 다시 사용할 수 있습니다.

이 테스트는 모두 연속 또는 이산 분포에서 작동합니다. 또한 불확실성의 정도를 나타 내기 위해 약간의 검정력 또는 신뢰 구간을 포함해야합니다. 낮은 검정력으로 인한 유의성 부족 또는 통계적으로 유의미한 차이는 여전히 사실상 의미가 없습니다.


그렉, 고마워 이것은 jbruck의 질문에 대한 매우 유용한 일반적인 답변이며 나에게도 도움이됩니다. (제 질문은 좀 더 구체적이었습니다. 답을 기대하기에는 너무 좁을 수도 있습니다.)
Mars

1
@ 화성, 내 대답은 적어도 당신의 일부에 간접적으로 대답한다고 생각합니다. 정규 KS 검정은 관계를 가정하지 않으며 귀무 가설 하에서 검정 통계량에 대한 이론적 모델을 사용합니다. 관계로 이론적 모델은 정확하지 않지만 대신 시뮬레이션 (순열 테스트, null dist에서 시뮬레이션 등)을 사용하여 null 분포를 계산할 수 있으므로 p- 값 등을 얻을 수 있습니다. 당신이 언급 한 주장.
그렉 스노우
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.