как позволить функции подбора определить диапазон подгонки? - PullRequest
0 голосов
/ 11 февраля 2019

Я хочу дополнить часть моих данных Python, используя lmfit (это не обязательно!).Я хотел бы иметь динамический диапазон данных для подгонки, то есть иметь два параметра подгонки, которые определяют часть моих данных для подгонки (назовем это нижней и верхней границами).причина в том, что у меня много наборов данных.в каждом из них диапазон варьирования варьируется, и я не могу определить модель, чтобы соответствовать всему диапазону данных.с другой стороны, я не могу просмотреть каждый набор данных и определить подходящий диапазон.Это вообще возможно?Я думал о умножении импульсной функции на мою модель, которая также влияет на исходные данные.хотя, насколько я понимаю, я не могу сказать, чтобы lmfit умножил это на данные.так что я не в курсе!

orange line is the fit, blue dots are the fitted data, and the light green dots are the excluded data

1 Ответ

0 голосов
/ 11 февраля 2019

Количество наблюдений (точек данных или длины остаточного массива), возвращаемых функцией модели или функцией, которая должна быть минимизирована, должно быть одинаковым во время индивидуальной подгонки.Конечно, это может измениться между последовательными подгонками.Таким образом, вы можете попробовать несколько подгонок для каждого набора данных с разными диапазонами, возможно, на основе предыдущего подбора.

Я думаю, что ваша идея использовать «там, где плохо подходит», чтобы определить, где не подходит, является несколько подозрительной, и вы хотели бы убедиться, что это приведет к абсурдным результатам.Например, если диапазон был автоматически уменьшен настолько, что Ndata = Nvariables + 1, вы, вероятно, могли бы получить очень низкий хи-квадрат по сравнению с Ndata = 100 * Nvariables.

Не зная подробностей, я думаю, что вам лучше придумать критерии для выбора диапазона данных, который зависит от одних данных, а не подходит для них.

...