1 min read

`do`函数和`biglm`包

导入数据,这里需要一定体量的数据。

y_year <- lahman_df() %>% 
  tbl("Batting") %>%
  group_by(yearID)
by_year %>% 
  do(mod = lm(R ~ AB, data = .))

如上,这里do会反馈一个list,因此可以使用mutate整合和挖掘。

并且biglm的结果非常节约内存,如下。

by_year %>% 
  do(mod = lm(R ~ AB, data = .)) %>%
  object.size() %>%
  print(unit = "MB")
#> 23.1 Mb

by_year %>% 
  do(mod = biglm::biglm(R ~ AB, data = .)) %>%
  object.size() %>%
  print(unit = "MB")
#> 0.8 Mb