Python에서 fisher의 정확한 테스트를 수행하는 방법


Fisher의 정확 검정은 두 범주형 변수 사이에 유의미한 연관성이 있는지 여부를 확인하는 데 사용됩니다.

일반적 으로 2×2 테이블에서 하나 이상의 셀 개수가 5보다 작은 경우 카이제곱 독립성 검정 의 대안으로 사용됩니다 .

이 튜토리얼에서는 Python에서 Fisher의 정확한 테스트를 수행하는 방법을 설명합니다.

예: Python에서 Fisher의 정확 검정

성별이 특정 대학의 정당 선호와 연관되어 있는지 여부를 알고 싶다고 가정해 보겠습니다.

이를 탐구하기 위해 우리는 캠퍼스 내 25명의 학생을 무작위로 설문조사했습니다. 성별에 따른 민주당 또는 공화당 학생 수는 아래 표에 나와 있습니다.

민주당 공화주의자
여성 8 4
남성 4 9

성별과 정당 선호도 사이에 통계적으로 유의미한 연관성이 있는지 확인하기 위해 다음 단계를 사용하여 Python에서 Fisher의 정확한 테스트를 수행할 수 있습니다.

1단계: 데이터를 생성합니다.

먼저 데이터를 보관할 테이블을 만듭니다.

 data = [[8, 4],
         [4, 9]]

2단계: Fisher의 정확 검정을 수행합니다.

다음으로, 다음 구문을 사용하는 SciPy 라이브러리의 fisher_exact 함수를 사용하여 Fisher의 정확한 테스트를 수행할 수 있습니다.

fisher_exact(테이블, 대안=’두 얼굴’)

금:

  • 테이블: 2×2 비상 테이블
  • 대안: 대립 가설을 정의합니다. 기본값은 “양측”이지만 단측 테스트의 경우 “더 적음” 또는 “더 큼”을 선택할 수도 있습니다.

다음 코드는 특정 예에서 이 함수를 사용하는 방법을 보여줍니다.

 import scipy.stats as stats

print(stats.fisher_exact(data))

(4.5, 0.1152)

검정을 위한 p-값은 0.1152 입니다.

Fisher 정확 검정에서는 다음과 같은 귀무 가설과 대립 가설을 사용합니다.

  • H 0 : (귀무가설) 두 변수는 독립적입니다.
  • H 1 : (대립 가설) 두 변수는 독립적 이지 않습니다 .

이 p-값은 0.05 이상이므로 귀무가설을 기각하지 않습니다.

따라서 성별과 정당 선호도 사이에 유의미한 연관성이 있다고 말할 수 있는 충분한 증거가 없습니다.

즉, 성별과 정당 선호도는 독립적입니다.

의견을 추가하다

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