平均分段用时的线性回归
我们假设在 800 m 比赛过程中,游泳运动员会以线性方式逐渐减速。每个分段的减速量就是"平均分段用时"对"分段编号"图中的斜率。请执行一次线性回归来估计每个分段的减速量,并使用配对自举法计算该减速量的 95% 置信区间。同时绘制最佳拟合直线。
注意:我们可以为平均分段用时计算误差条,并在回归分析中加以利用。但本练习不考虑这些因素,因为这超出了本课程范围。
本练习是课程的一部分
统计思维案例研习
练习说明
- 使用
np.polyfit()执行线性回归,得到每个分段的减速量。变量split_number和mean_splits已在您的命名空间中。将斜率和截距分别存入slowdown和split_3。 - 使用
dcst.draw_bs_pairs_linreg()计算 10,000 个关于每分段减速量的配对自举重复。将结果存入bs_reps。截距的自举重复与本分析无关,可将其存入占位变量_。 - 计算每分段减速量的 95% 置信区间。
- 将分段编号(
split_number)与平均分段用时(mean_splits)以散点形式绘制,并叠加最佳拟合直线。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Perform regression
____, ____ = ____
# Compute pairs bootstrap
bs_reps, _ = ____
# Compute confidence interval
conf_int = ____
# Plot the data with regressions line
_ = ____(____, ____, marker='.', linestyle='none')
_ = ____(____, ____ * ____ + ____, '-')
# Label axes and show plot
_ = plt.xlabel('split number')
_ = plt.ylabel('split time (s)')
plt.show()
# Print the slowdown per split
print("""
mean slowdown: {0:.3f} sec./split
95% conf int of mean slowdown: [{1:.3f}, {2:.3f}] sec./split""".format(
slowdown, *conf_int))