在Pandas中进行预测区间估计,可以使用statsmodels
库中的回归模型来实现。下面是一个示例:
import pandas as pd import statsmodels.api as sm # 创建一个DataFrame data = https://www.yisu.com/ask/{'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中。