Ни один из постов о сингулярной ошибке градиента не решил мою проблему.
Я хочу приспособить модель квадратичного плато к моим данным.По какой-то причине модель не работает с сингулярной ошибкой градиента.
fit.lm = lm(Olsen ~ ER, data=fosfo)
a.ini = fit.lm$coefficients[1]
b.ini = fit.lm$coefficients[2]
clx.ini = mean(fosfo$ER)
quadplat = function(x, a, b, clx) {
ifelse(x < clx, a + b * x + (-0.5*b/clx) * x * x,
a + b * clx + (-0.5*b/clx) * clx * clx)}
model = nls(Olsen ~ quadplat(ER, a, b, clx),
data = fosfo,
start = list(a = a.ini,
b = b.ini,
clx = clx.ini),
trace = FALSE,
nls.control(maxiter = 1000))