Trực quan hóa các mẫu bootstrap
Trong bài tập này, bạn sẽ tạo các mẫu bootstrap từ bộ dữ liệu lượng mưa hằng năm đo tại Trạm Thời tiết Sheffield (Vương quốc Anh) từ năm 1883 đến 2015. Dữ liệu được lưu trong mảng NumPy rainfall với đơn vị milimét (mm). Bằng cách hiển thị đồ họa các mẫu bootstrap bằng ECDF, bạn sẽ cảm nhận được cách lấy mẫu bootstrap cho phép mô tả xác suất của dữ liệu.
Bài tập này là một phần của khóa học
Tư duy Thống kê với Python (Phần 2)
Hướng dẫn bài tập
- Viết một vòng lặp
forđể lấy50mẫu bootstrap của dữ liệu lượng mưa và vẽ ECDF của chúng.- Dùng
np.random.choice()để tạo một mẫu bootstrap từ mảng NumPyrainfall. Hãy đảm bảosizecủa mảng lấy mẫu lại làlen(rainfall). - Dùng hàm
ecdf()mà bạn đã viết ở phần trước của khóa học để tạo các giá trịxvàycho ECDF của mẫu bootstrapbs_sample. - Vẽ các giá trị ECDF. Chỉ định thêm
color='gray'(để có các chấm màu xám) vàalpha=0.1(để chúng bán trong suốt, vì chúng ta chồng rất nhiều đường) bên cạnh các đối số từ khóamarker='.'vàlinestyle='none'.
- Dùng
- Dùng
ecdf()để tạo các giá trịxvàycho ECDF của dữ liệu lượng mưa gốc trong mảngrainfall. - Vẽ các giá trị ECDF của dữ liệu gốc.
- Nhấn Gửi để trực quan hóa các mẫu!
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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()