Не удается получить R для отображения линии регрессии (geom_smooth)? - PullRequest
0 голосов
/ 20 апреля 2020

Вечер всех, надеясь, что кто-то может помочь. Я провел вечер, возясь с пакетом ggplot, но по какой-то причине я не могу получить строку регрессии, чтобы показать, используя geom_smooth!

Я включил код здесь, к сожалению, терминал не ' на самом деле это не помечается как ошибка, что является одной из причин, почему я в тупике! Я запускаю его построчно, и каждая строка выполняется без флагов. Сам график даже отображается без помех, просто отсутствует линия регрессии!

код:

library(ggplot2)
ScatterPlot <- ggplot(graph, aes (x= Specimen.date, y= Daily.lab.confirmed.cases)) + geom_point() + geom_smooth(method = lm) + theme(axis.text.x = element_text(angle=90))

ScatterPlot + ylim(0,5000) + labs(x = "Date") + labs(y = "Daily Cases")

вывод:

> ScatterPlot <- ggplot(graph, aes (x= Specimen.date, y= Daily.lab.confirmed.cases)) + geom_point() + geom_smooth(method = lm) + theme(axis.text.x = element_text(angle=90))
> ScatterPlot + ylim(0,5000) + labs(x = "Date") + labs(y = "Daily Cases")

geom_smooth() с использованием формулы 'y ~ x'

Я также пытался преобразовать столбцы к цифрам c, но это тоже не сработало (x = as.numeri c (), y = as.numeri c ().

любые предложения !?

Спасибо

Майкл

1 Ответ

0 голосов
/ 20 апреля 2020

Хорошо, мы добрались до конца. Mlcyo (см. Комментарии, спасибо!) Получил большую часть пути. Дали мне, по крайней мере, более полезную ошибку. Вот как это было исправлено ...:

graph[] <- lapply(graph, as.numeric) # Force entire dataframe into numeric type


fit <- lm(Daily.lab.confirmed.cases ~ Specimen.date, data = graph) # Manually generate linear model 

 geom_line(data = fortify(fit), aes(x = Specimen.date, y = .fitted)) # Insert after geom_point()

Надеюсь, это поможет кому-то еще! Еще раз спасибо mlcyo, удачи с докторской степенью!

M

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