Alternativas para group_map

Dec 07 2020

Estou curioso para saber qual seria o código R de base e o data.tablecódigo que faz o mesmo trabalho que group_mapem dplyr?

Por exemplo, como realizar esse código usando base R e data.tablecódigo?

iris %>%
     group_by(Species) %>%
     group_map(~ lm(Petal.Length ~ Sepal.Length, data = .x))

Muito Obrigado!

EDITAR Eu gostaria de converter todo o código acima em um código base R e, se possível, também me livrar do group_bye%>%

Respostas

4 PeaceWang Dec 07 2020 at 13:11

Com por e .SD , o código data.table pode funcionar

iris %>% 
  data.table(.) %>% 
  .[, .(list(lm(Petal.Length ~ Sepal.Length, .SD))), by = .(Species)] %>% 
  as.list()

Semelhante a esta questão, ajuste o modelo por grupo usando o pacote Data.Table

O %>% não é necessário,

as.list(data.table(iris)[, .(list(lm(Petal.Length ~ Sepal.Length, .SD))), by = .(Species)])