Нелинейная регрессия с группами по nlsList в R
Возьмите пример mtcars в R: я хочу сделать нелинейную регрессию для отношения между mpg и disp для каждого цилиндра и каждой группы против. В моем случае у меня есть кадр данных, намного больший, чем mtcars. Я знаю, что недостаточно данных. Но чтобы упростить этот вопрос, я всегда буду использовать mtcars, но предположим, что у нас достаточно данных для нелинейной регрессии нескольких групп, а формула имеет тип tanh. Я хочу сделать регрессию типа Тан для каждого цилиндра и каждой группы против, поэтому я попытался:
mtcars2 <-list()
reg2 <-list()
attach(mtcars)
for (i in levels(cyl))
{
mtcars2[[i]] <-
groupedData( mpg ~ disp | vs,
data = subset(mtcars,cyl==i))
reg2[[i]] <- nlsList(mpg ~ A + B * tanh(disp/C), data=mtcars2[[i]],
start = list(A=1, B=1, C=0.5), na.action = na.omit)
}
Я хочу сделать точечный график, используя график (mycars2[[i]]) с регрессией tanh. К сожалению, у меня всегда есть ошибки, такие как:
dim(x) must have positive length
Не могли бы вы помочь мне? Могу ли я использовать напрямую
nlme() or other functions to do regressions and xyplot results?
Большое спасибо!