在使用data.table很長一段時間後,我現在認爲是時候試試dplyr了。這很有趣,但我無法弄清楚如何訪問 - 當前分組變量 - 返回每個組的多個值dplyr:訪問當前組變量
以下示例顯示可以正常使用data.table。你會如何寫這與dplyr
foo <- matrix(c(1, 2, 3, 4), ncol = 2)
dt <- data.table(a = c(1, 1, 2), b = c(4, 5, 6))
# data.table (expected)
dt[, .(c = foo[, a]), by = a]
a c
1: 1 1
2: 1 2
3: 2 3
4: 2 4
# dplyr (?)
dt %>%
group_by(a) %>%
summarize(c = foo[a])
隨着'summarize'也做,你可能無法做到,你可以嘗試'do' – akrun
你在'foo [a]'中缺少一個逗號......無論如何,正如akrun所建議的,總結並不是一個好的選擇,因爲它喜歡每組返回一行。也不是變異,它喜歡返回n()又名.N,所以你需要在dplyr世界中一起破解一些東西。 – Frank
hm。謝謝。仍然沒有成功:dt%>% group_by(a)%>% do(c = foo [,a]) 您能告訴我工作片段嗎? –