개구리 데이터에 대한 순열 검정
개구리 A의 평균 타격력은 0.71 뉴턴(N), 개구리 B는 0.42 N으로, 차이는 0.29 N입니다. 실제로는 두 개구리가 같은 힘으로 타격하고 관측된 차이는 우연일 수도 있습니다. 두 개구리의 타격력 분포가 동일하다는 가설하에 평균 타격력 차이가 최소 0.29 N 이상이 될 확률을 계산해 보겠습니다. 이 가설을 검정하기 위해, 통계량으로 평균의 차이를 사용하는 순열 검정을 적용합니다.
편의를 위해 데이터는 force_a와 force_b 배열에 저장되어 있습니다.
이 연습은 강의의 일부입니다
Python으로 하는 통계적 사고 (2부)
연습 안내
- 호출 시그니처가
diff_of_means(data_1, data_2)인 함수를 정의해 두 데이터 집합의 평균 차이, 즉data_1의 평균에서data_2의 평균을 뺀 값을 반환하게 하세요. - 이 함수를 사용해 개구리 데이터에서 관측된 경험적 평균 차이를 계산하세요.
- 평균 차이에 대한 순열 복제본을 10,000개 생성하세요.
- p-value를 계산하세요.
- p-value를 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
def diff_of_means(data_1, data_2):
"""Difference in means of two arrays."""
# The difference of means of data_1, data_2: diff
diff = ____
return diff
# Compute difference of mean impact force from experiment: empirical_diff_means
empirical_diff_means = ____
# Draw 10,000 permutation replicates: perm_replicates
perm_replicates = draw_perm_reps(____, ____,
____, size=10000)
# Compute p-value: p
p = np.sum(____ >= ____) / len(____)
# Print the result
print('p-value =', p)