Рассчитать доверительный интервал наименьших квадратов
У меня есть вопрос, с которым я бьюсь уже несколько дней.
Как рассчитать (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-распределение из std-ошибки метода наименьших квадратов, напримерscipy.optimize.curve_fit
но это не то, что я ищу.
Спасибо за любую помощь!