Подтвердить что ты не робот

Вычисление значения R ^ 2 для нелинейной регрессии

Вначале я хотел бы сказать, что я понимаю, что вычисление значения R ^ 2 для нелинейной регрессии не совсем корректно или правильное.

Однако я переживаю переходный период выполнения большей части нашей работы в SigmaPlot до R и для наших нелинейных моделей (концентрация-реакция), коллеги используются для просмотра значения R ^ 2, связанного с моделью для оценки добрососедства.

SigmaPlot вычисляет R ^ 2, используя 1- (остаточный SS/общий SS), но в R I, похоже, не может извлечь общую SS (остаточные SS сообщаются в резюме).

Любая помощь в том, чтобы заставить это работать, была бы весьма признательна, поскольку я стараюсь и побуждаю нас к использованию более качественной оценки добрососедства.

Приветствия.

4b9b3361

Ответ 1

Вместо того, чтобы извлекать общий SS, я только что вычислил их:

test.mdl <- nls(ctrl.adj~a/(1((conc.calc/x0)^b)),
                data=dataSet,
                start=list(a=100,b=10,x0=40), trace=T);

1 - (deviance(test.mdl)/sum((ctrl.adj-mean(ctrl.adj))^2))

Я получаю тот же R ^ 2, что и при использовании SigmaPlot, поэтому все должно быть хорошо.

Ответ 2

Таким образом, полная вариация y подобна (n-1) * var (y), а пропорция не объясняет, что моя модель sum(residuals(fit)^2), так что сделайте что-то вроде 1-(sum(residuals(fit)^2)/((n-1)*var(y)) )