knitr::opts_chunk$set( collapse = TRUE, comment = "#>" )
This vignette displays how to use nesting in tidyfst
. It has referred to tidyr
s vignette in https://tidyr.tidyverse.org/articles/nest.html. Now fist, we nest the "mtcars" data.frame by "cyl" column.
library(tidyfst) # nest by "cyl" column mtcars_nested <- mtcars %>% nest_dt(cyl) # you can use "cyl" too, very flexible # inspect the output data.table mtcars_nested
Now, we want to do a regression within the nested group "cyl". We'll use the famous lapply
to complete this:
mtcars_nested2 <- mtcars_nested %>% mutate_dt(model = lapply(ndt,function(df) lm(mpg ~ wt, data = df))) mtcars_nested2
We could see that the model is stored in the column "model". Now, we try to get the fitted value in the model.
mtcars_nested3 <- mtcars_nested2 %>% mutate_dt(model_predict = lapply(model, predict)) mtcars_nested3$model_predict
We could find that the "model_predict" is a list of numeric vectors. Let's try to unnest the target column "model_predict".
mtcars_nested3 %>% unnest_dt(model_predict)
This process would remove all the other list column automatically. For instance, in our case, the column "ndt" is removed.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.