2 차원 분포가 기준에 맞는지 확인하기 위해 2 차원 Kolmogorov-Smironov 테스트를 실행하고 싶습니다.
비교적 간단한 방식으로 사용할 수있는 패키지 나 응용 프로그램이 있습니까? 아니면 다른 알고리즘이 선호됩니까? 기본적인 통계 지식이 있습니다.
2 차원 분포가 기준에 맞는지 확인하기 위해 2 차원 Kolmogorov-Smironov 테스트를 실행하고 싶습니다.
비교적 간단한 방식으로 사용할 수있는 패키지 나 응용 프로그램이 있습니까? 아니면 다른 알고리즘이 선호됩니까? 기본적인 통계 지식이 있습니다.
답변:
Kolmogorov-Smirnov 테스트의 2 차원 확장은 Justel, Pena 및 Zamar에 의해 " 적합성에 대한 다변량 Komogorov-Smirnov 테스트"에 설명되어 있습니다. @ Procrastinator의 의견에 따르면 다른 제안이있을 수 있습니다.
그러나 나는 간단한 구현을 가진 패키지를 보지 못했습니다.
수행하려는 작업에 따라 Tarn Duong의 ks 패키지에있는 kde.test ()가 더 유용 할 수 있습니다.
numpy를 사용하여 파이썬 구현을 작성했습니다. 여기 에서 코드를 찾을 수 있으며 코드 의 docstring에서 더 많은 정보를 찾을 수 있습니다.
그리고 여기 또 다른 것이 있습니다. 이 노트북 은 2 개의 샘플로 2D KS 테스트를위한 Python 구현을 제공합니다. .py
파일을 다운로드 할 수 있습니다 여기에 . 코드는 코드를 직접 번역 한 것 같습니다 C
. 샘플 크기가 크면 효율성에 문제가있을 수 있습니다.
그러나 사용하기 전에 원본 종이 / 책으로 코드를 확인하는 것이 좋습니다. 2d KS 테스트의 파이썬 구현은 R의 테스트보다 훨씬 덜 점검됩니다.
알고리즘은 두 개의 논문으로 처음 개발되었습니다 (보듯이)
좋은 소개와 C
구현은
Press, WH et al. 1992, C의 Numerical Recipes , Section 14.7, p645.
C++/Fortran
다른 버전의 책에서 구현을 찾을 수 있습니다 .
다음 은 Kolmogorov-Smirnov 테스트 가 주제와 관련이 있다는 제목입니다. 살펴볼 수도 있습니다. 주어진 KS 거리에서 p- 값을 평가하기 위해 재 샘플 방법을 사용하는 것이 좋습니다.
이 Matlab 코드가 유용하다는 것을 알 수 있습니다.