Các lựa chọn thay thế cho group_map

Dec 07 2020

Tôi tò mò không biết mã R cơ sở và data.tablemã hoạt động tương tự như group_maptrong sẽ là dplyrgì?

Ví dụ, làm thế nào để nhận ra mã này bằng cách sử dụng cơ sở R và data.tablemã?

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

Cảm ơn nhiều!

CHỈNH SỬA Tôi muốn chuyển đổi toàn bộ mã ở trên thành một mã có mã cơ sở R và vì vậy nếu có thể, hãy loại bỏ group_by%>%

Trả lời

4 PeaceWang Dec 07 2020 at 13:11

Với bằng.SD , các data.table mã có thể làm việc

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

Tương tự với câu hỏi này Phù hợp với mô hình theo nhóm sử dụng gói Data.Table

Các %>% là không cần thiết,

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