lines () просто не показывает линейное предсказание моей нелинейной регрессии - PullRequest
0 голосов
/ 06 марта 2020

У меня были проблемы с построением линий с моей нелинейной регрессией, потому что длины переменных построения были разными, потому что регрессия не учитывала некоторые наблюдения. Я исправил это, используя na.action = na.exclude. Теперь предупреждение «длины различны» больше не отображается, но линии () просто не показывают мое нелинейное предсказание.

Извините, если это нечетко, но я действительно не знаю, что происходит, потому что нет сообщения об ошибке.

Вот код, который я использую:

data_lm <- read.csv('notaport.csv', sep=';', dec=',')

regs <- lm(notaport ~ tamturma, data=data_lm)
regm <- lm(notaport ~ tamturma + I(tamturma**2), data=data_lm, na.action = na.exclude)

plot(data_lm$tamturma, data_lm$notaport, xlab='Tamanho da Turma', ylab = 'Notas de Português', pch='.')
abline(regs, col='red')

linearpred_regm <- predict(regm) 

plot(data_lm$tamturma, data_lm$notaport, xlab='Tamanho da Turma', ylab = 'Notas de Português', pch='.')
lines(linearpred_regm, data_lm$tamturma, col='red')

summary(data_lm)
summary(regs)
summary(regm)

Мои данные можно загрузить по этой ссылке в разделе We Transfer.

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

Иногда кривая нуждается в большем сглаживании. Возможно, не в этом случае, но в других случаях это возможно. Тогда вы можете использовать этот метод:

newdata <- data.frame(tamturma=seq(6,65,0.1))
linearpred_regm <- predict(regm, newdata=newdata) 
lines(newdata$tamturma, linearpred_regm, col='red')
0 голосов
/ 06 марта 2020

Вы передаете переменные оси y на ось x и наоборот. Также вам необходимо убедиться, что ваши переменные x упорядочены правильно:

plot(data_lm$tamturma, data_lm$notaport, xlab='Tamanho da Turma', ylab= 'Notas de Português', pch='.')

ord <- order(data_lm$tamturma)

lines(data_lm$tamturma[ord], linearpred_regm[ord], col='red')

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...