Я хочу узнать, как выполнять нелинейную регрессию в R. Мне удалось изучить основы функции nls
, но как мы знаем, что в нелинейной регрессии важно использовать хорошие начальные параметры. Я попытался выяснить, как работают функции selfStart
и getInitial
, но не получилось. Документация очень скудная и не очень полезная. Я хотел изучить эти функции с помощью простых данных моделирования. Я смоделировал данные из модели logisti c:
n<-100 #Number of observations
d<-10000 #our parameters
b<--2
e<-50
set.seed(n)
X<-rnorm(n, -e/b, 2) #Thanks to it we'll have many observations near the point where logistic function grows the faster
Y<-d/(1+exp(b*X+e))+rnorm(n, 0, 200) #I simulate data
Теперь я хотел сделать регрессию с функцией f (x) = d / (1 + exp (b * x + e)), но я не не знаю, как использовать selfStart
или getInitial
. Не могли бы вы помочь мне? Но, пожалуйста, не говорите мне о SSlogis
. Я знаю, что это функция, предназначенная для поиска начальных параметров в регрессии logisti c, но, похоже, она работает только в регрессии с одной объясняющей переменной, и я хотел бы узнать, как выполнить регрессию logisti c с более чем одной объясняющие переменные и даже как сделать общую нелинейную регрессию с помощью функции, которую я определил mysefl.
Буду очень признателен за вашу помощь.