在Pandas中进行预测区间估计,可以使用statsmodels
库中的回归模型来实现。下面是一个示例:
import pandas as pd
import statsmodels.api as sm
# 创建一个DataFrame
data = {'x': [1, 2, 3, 4, 5],
'y': [2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 添加截距列
df['intercept'] = 1
# 拟合线性回归模型
model = sm.OLS(df['y'], df[['intercept', 'x']]).fit()
# 进行预测
predictions = model.get_prediction(df[['intercept', 'x']])
# 获取预测区间的下限和上限
pred_ci = predictions.conf_int()
# 将预测区间的下限和上限添加到DataFrame中
df['lower_ci'] = pred_ci[:, 0]
df['upper_ci'] = pred_ci[:, 1]
print(df)
在上面的示例中,首先创建了一个DataFrame,并为其添加了一个截距列。然后使用sm.OLS
方法来拟合线性回归模型,并对新数据进行预测。最后,通过get_prediction
方法获取预测区间的上下限,并将其添加到DataFrame中。