我有一个问题困扰了我好几天。
如何计算拟合的(95%)置信区间带?
将曲线拟合到数据是每个物理学家的日常工作,因此我认为应该在某个地方实现这一点,但我找不到任何实现方式,也不知道如何在数学上进行计算。
我唯一找到的是seaborn
,对于线性最小二乘法做得很好。
import numpy as np
from matplotlib import pyplot as plt
import seaborn as sns
import pandas as pd
x = np.linspace(0,10)
y = 3*np.random.randn(50) + x
data = {'x':x, 'y':y}
frame = pd.DataFrame(data, columns=['x', 'y'])
sns.lmplot('x', 'y', frame, ci=95)
plt.savefig("confidence_band.pdf")
但这只是最小二乘法。当我想要拟合像这样的饱和曲线时,我就束手无策了。
当然,我可以从最小二乘法的标准误差计算t分布,例如使用scipy.optimize.curve_fit
,但那不是我要找的。
感谢任何帮助!!