初级
置信区间
未完成 100%
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv('https://liangdaima.com/static/data/wooldridge/wage1.csv')
X = sm.add_constant(df[['educ', 'exper', 'tenure']])
model = sm.OLS(df['wage'], X).fit()
ci = model.conf_int()
params = model.params.drop('const')
ci = ci.drop('const')
plt.figure(figsize=(10,6))
y_pos = np.arange(len(params))
plt.errorbar(params, y_pos, xerr=[params - ci[0], ci[1] - params],
fmt='o', capsize=5, color='steelblue', markersize=8)
plt.axvline(x=0, color='k', linestyle='--', linewidth=0.5)
plt.yticks(y_pos, params.index)
plt.title('回归系数95%置信区间', fontsize=14)
plt.xlabel('系数值', fontsize=12)
plt.ylabel('变量', fontsize=12)
plt.grid(alpha=0.3)
plt.tight_layout()
plt.show()
print(round(ci.loc['educ', 0], 4))
示例
输入
solve()
期望输出
0.4982
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199