시작하기무료로 시작하기

순열 연습

NBA 선수들은 미국 성인 남성보다 더 무거울까요? 이제 NBA 선수와 미국 성인 남성의 평균 체중 차이(킬로그램)의 95% 신뢰구간을 구해 보려고 합니다. 제공된 두 리스트를 사용할 거예요.

차이를 검정할 때는 순열(permutation) 방법이 특히 유용하므로, 여기서는 이 재표본추출(resampling) 방법을 사용합니다!

nba_weights = [96.7, 101.1, 97.9, 98.1, 98.1, 100.3, 101.0, 98.0, 97.4, 100.5, 100.3, 100.2, 100.6]
us_adult_weights = [75.1, 100.1, 95.2, 81.0, 72.0, 63.5, 80.0, 97.1, 94.3, 80.3, 93.5, 85.8, 95.1]

위의 각 리스트에는 체중 값이 13개씩 들어 있습니다.

다음 모듈은 이미 임포트되어 있어요: random, numpynp, seabornsns, 그리고 matplotlib.pyplotplt.

이 연습은 강의의 일부입니다

Python으로 배우는 Monte Carlo 시뮬레이션

강의 보기

연습 안내

  • nba_weightsus_adult_weights의 값을 모두 포함하는 리스트를 all_weights로 정의하세요.
  • np.random.permutation()을 사용해 all_weights에 순열을 적용하세요.
  • 순열된 샘플 중 처음 13개를 perm_nba에, 나머지 13개를 perm_adult에 할당하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Define all_weights
all_weights = ____
simu_diff = []

for i in range(1000):
	# Perform the permutation on all_weights
    perm_sample = ____
    # Assign the permutated samples to perm_nba and perm_adult
    perm_nba, perm_adult = ____, ____
    perm_diff = np.mean(perm_nba) - np.mean(perm_adult)
    simu_diff.append(perm_diff)
mean_diff = np.mean(nba_weights) - np.mean(us_adult_weights) 
upper = np.quantile(simu_diff, 0.975)
lower = np.quantile(simu_diff, 0.025)
print(mean_diff, lower, upper)
코드 편집 및 실행