gpt4 book ai didi

r - 如何在不使用管道的情况下将 dcast 引入 data.table 链?

转载 作者:行者123 更新时间:2023-12-04 01:46:23 26 4
gpt4 key购买 nike

data.table 使用链式规则优雅而直观。一切都像机器一样排列整齐。但有时我们不得不引入一些操作,比如 dcast或融化。如何将所有操作集成到 [] ?我承认,仅仅因为它更优雅。

DT <- data.table(A = rep(letters[1:3],4), B = rep(1:4,3), C = rep(c("OK", "NG"),6))
DT.1 <- DT[,.N, by = .(B,C)] %>% dcast(B~C)
DT.2 <- DT.1[,.N, by = .(NG)]
# NG N
#1: NA 2
#2: 3 2

#same
DT <- data.table(A = rep(letters[1:3],4), B = rep(1:4,3), C = rep(c("OK", "NG"),6))[,.N, by = .(B, C)] %>%
dcast(B~C) %>% .[,.N, by =.(NG)]

我可以删除 %>%并集成到 [] ?
谢谢

最佳答案

使用 .SD 怎么样?为此:

DT[, .N, by = .(B, C)
][, dcast(.SD, B ~ C)
][, .N, by = .(NG)]

NG N
1: NA 2
2: 3 2

关于r - 如何在不使用管道的情况下将 dcast 引入 data.table 链?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55098688/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com