如何获得较低和较高的95%置信度或预测间隔列作为我的预测?
df1 = pd.DataFrame({
'cumsum_days': [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],
'prediction': [800, 900, 1200, 700, 600,
550, 500, 650, 625, 600,
550, 525, 500, 400, 350]})
所需的数据框看起来像这样:
prediction lower_ci high_ci
800 some_num some num
900 some_num some num
1200 some_num some num
700 some_num some num
这些功能只给我个位数,但是我正在寻找df.prediction的95%置信区间(一个15个数据点)。
mean = df.prediction.mean()
std = df.prediction.std()
我也尝试过(下面),但是它只给我三个值,而不是我的预测值的2个额外的置信带/间隔数组:
import numpy as np
import scipy.stats
def mean_confidence_interval(data, confidence=0.95):
a = 1.0 * np.array(data)
n = len(a)
m, se = np.mean(a), scipy.stats.sem(a)
h = se * scipy.stats.t.ppf((1 + confidence) / 2., n-1)
return m, m-h, m+h
这样的事情怎么样?