Ước lượng tốc độ và khoảng tin cậy
Hãy tiếp tục xem dữ liệu leo núi ở Vườn quốc gia. Lưu ý rằng một số quãng đường có giá trị âm vì họ đi ngược hướng so với điểm đầu lối mòn; dữ liệu khá lẫn lộn nên chúng ta sẽ chỉ tập trung vào xu hướng tổng thể.
Trong bài này, mục tiêu của bạn là dùng phương pháp boot-strap resampling để tìm phân phối các giá trị tốc độ cho một mô hình tuyến tính, rồi từ phân phối đó tính ước lượng tốt nhất cho tốc độ và khoảng tin cậy 90% của ước lượng đó. Ở đây, tốc độ chính là tham số hệ số góc (slope) từ mô hình hồi quy tuyến tính dùng để khớp quãng đường theo thời gian.
Để bạn bắt đầu, chúng tôi đã nạp sẵn dữ liệu distance và time, cùng với hàm least_squares() đã định nghĩa sẵn để tính giá trị tốc độ cho từng mẫu bootstrap.

Bài tập này là một phần của khóa học
Nhập môn Mô hình tuyến tính với Python
Hướng dẫn bài tập
- Dùng
np.random.choice()để rútsample_indstừpopulation_inds, giữ nguyên cặp ghép distance-time của từng điểm dữ liệu. - Để giữ thứ tự thời gian, gọi
.sort()trênsample_inds, rồi dùngsample_indsđể đánh chỉ mụcdistancesvàtimes. - Dùng
least_squares(times, distances)để tính các tham số mô hình tuyến tính và lưua1vàoresample_speeds. - Áp dụng
np.mean()vànp.percentiles()choresample_speedsđể tính tốc độ và khoảng tin cậyci_90, rồi in cả hai.
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.
# Resample each preloaded population, and compute speed distribution
population_inds = np.arange(0, 99, dtype=int)
for nr in range(num_resamples):
sample_inds = np.random.choice(____, size=100, replace=True)
sample_inds.____()
sample_distances = distances[____]
sample_times = times[____]
a0, a1 = ____(sample_times, sample_distances)
resample_speeds[nr] = ____
# Compute effect size and confidence interval, and print
speed_estimate = np.mean(____)
ci_90 = np.percentile(____, [5, 95])
print('Speed Estimate = {:0.2f}, 90% Confidence Interval: {:0.2f}, {:0.2f} '.format(____, ____[0], ____[1]))