计算 Pandas DataFrame 中每一行的置信区间

问题描述

我有一个 Pandas dataframe,其中每一列都是一个时间序列的预测,我想计算一个平均值和它周围的置信区间,以便我可以绘制它。现在我循环每一行,计算 mean,min, and max,然后用 fill_between(min,max),但我认为这不是正确的做法。 dataframe 看起来像:

Pred1 Pred2 Pred3
x1 x1 x1
x2 x2 x2
x3 x3 x3

除非它会更大。大约 50 列和 300 行。知道我如何有效地做到这一点吗?必须在许多类似的表上进行。

解决方法

IIUC 您可以尝试使用 meanminmax 沿列(轴 = 1)

ax = df.mean(axis=1).plot()
ax.fill_between(df.index,df.min(axis=1),df.max(axis=1),alpha=0.2)