시작하기무료로 시작하기

부트스트랩 샘플 시각화

이 연습 문제에서는 영국 셰필드 기상 관측소에서 1883년부터 2015년까지 측정한 연간 강수량 데이터에서 부트스트랩 샘플을 생성해 보겠습니다. 데이터는 밀리미터(mm) 단위로 NumPy 배열 rainfall에 저장되어 있습니다. 부트스트랩 샘플을 ECDF로 시각화하면, 부트스트랩 샘플링이 데이터에 대해 확률적인 설명을 가능하게 하는 방식을 감각적으로 파악할 수 있어요.

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

Python으로 하는 통계적 사고 (2부)

강의 보기

연습 안내

  • for 루프를 작성해 강수량 데이터의 부트스트랩 샘플 50개를 만들고, 각 샘플의 ECDF를 그리세요.
    • NumPy 배열 rainfall에서 부트스트랩 샘플을 생성하려면 np.random.choice()를 사용하세요. 재표본 배열의 size는 반드시 len(rainfall)로 지정합니다.
    • 이 강의 전편에서 작성했던 함수 ecdf()를 사용해 부트스트랩 샘플 bs_sample의 ECDF에 대한 xy 값을 생성하세요.
    • ECDF 값을 그리세요. 많은 곡선을 겹쳐 그리므로 회색 점과 반투명 효과를 주기 위해 marker='.', linestyle='none'에 더해 color='gray', alpha=0.1을 지정하세요.
  • 배열 rainfall에 있는 원본 강수량 데이터에 대해서도 ecdf()로 ECDF의 xy 값을 생성하세요.
  • 원본 데이터의 ECDF 값을 그리세요.
  • 완료되면 Submit을 눌러 샘플을 시각화해 보세요!

실습형 인터랙티브 연습

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

for _ in range(50):
    # Generate bootstrap sample: bs_sample
    bs_sample = ____(____, size=____)

    # Compute and plot ECDF from bootstrap sample
    x, y = ____
    _ = plt.plot(____, ____, ____='.', ____='none',
                 ____='gray', ____=0.1)

# Compute and plot ECDF from original data
x, y = ____
_ = plt.plot(____, ____, ____='.')

# Make margins and label axes
plt.margins(0.02)
_ = plt.xlabel('yearly rainfall (mm)')
_ = plt.ylabel('ECDF')

# Show the plot
plt.show()
코드 편집 및 실행