[R] Newbie: Drawing fitted lines on subset of data
kev|n @end|ng |rom zembower@org
Tue May 16 19:30:41 CEST 2023
Yep, that did it. I didn't know that you could have pipelines within
Thanks, again, for all your help.
On 5/16/23 11:44, Rui Barradas wrote:
> Às 15:29 de 16/05/2023, Kevin Zembower via R-help escreveu:
>> I's still working with my tsibble of weight data for the last 20 years.
>> In addition to drawing an overall trend line, using lm, for the whole
>> data set, I'd like to draw short lines that would recompute lm and draw
>> it, say, just for the years from 2010:2015.
>> Here's a short example that I think illustrates what I'm trying to do.
>> The commented out sections show what I've tried to far:
>> ## Short example to test segments:
>> w <- tsibble(
>> date = as.Date("2022-01-01") + 0:99,
>> value = rnorm(100)
>> ggplot(data = w, mapping = aes(date, value)) +
>> geom_smooth(method = "lm", se = FALSE) +
>> ## Below gives error about ignoring data
>> ## geom_abline( data = w$date[25:75] )
>> ## Gives error ''data' must be in <data.frame>'
>> ## geom_smooth(data = w$date[25:35],
>> ## method = lm,
>> ## color = "black",
>> ## se = FALSE)
>> I'm thinking that this is probably easily done, but I'm struggling with
>> how to subset the data in the middle of the pipeline.
>> Thanks for any advice and help.
>> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> PLEASE do read the posting guide
>> and provide commented, minimal, self-contained, reproducible code.
> Try the following.
> In the 2nd geom_smooth you need a subset of the data not of just one of
> its columns.
> ggplot(data = w, mapping = aes(date, value)) +
> geom_smooth(formula = y ~ x, method = "lm", se = FALSE) +
> geom_point() +
> data = w %>% filter(year(date) >= 2010, year(date) <= 2015),
> mapping = aes(date, value),
> formula = y ~ x,
> method = lm,
> color = "black",
> se = FALSE
> Other ways to subset the data are
> # dplyr
> data = w %>% filter(year(date) %in% 2010:2015)
> # base R
> data = subset(w, year(date) %in% 2010:2015)
> Hope this helps,
> Rui Barradas
More information about the R-help