Я пытаюсь решить двухкомпонентную модель распада в R, используя функцию nls, но столкнувшись с ошибками. Уравнение:проблемы с nls в R
где т время, Ctot является С1 + С2, а p1 и p2 известны пропорции Ctot.
мои данные (дд) является:
> head(dd,n=15)
t Ctot
1 0.00 6.62
2 0.33 6.45
3 0.50 6.38
4 0.67 6.44
5 0.83 6.38
6 1.00 6.39
7 1.17 6.35
8 1.33 6.33
9 1.50 6.33
10 1.67 6.28
11 1.83 6.17
12 2.00 6.11
13 2.17 6.07
14 2.33 5.89
15 2.50 5.86
Использование NLS Я пробовал:
p1 <- 0.3
p2 <- 0.7
z <- nls(Ctot~(p1*C1*(exp(-k1*t)))+(p2*C2*(exp(-k2*t))), data=dd, start=list(C1=6, C2=0.1, k1=0.01, k2=0.01))
Однако я получаю:
z <- nls(Ctot~(p1*C1*(exp(-k1*t)))+(p2*C2*(exp(-k2*t))), data=dd, start=list(C1=6, C2=0.1, k1=0.01, k2=0.01))
Error in numericDeriv(form[[3L]], names(ind), env) :
Missing value or an infinity produced when evaluating the model
Я был бы признателен, если кто-то имеет предложения!
Может быть, что оптимальные значения '' k1' и k2' близки друг другой, чтобы модель с одним термином была бы лучше. –
@ G.Grothendieck Да, но это двухкомпонентная модель распада. – squishy
Если k1 = k2, то это не так. –