我正在使用R 3.5.1
我认为这是一个简单的问题,但是我对R并不是很熟悉。
我有一个看起来像这样的data.frame对象
COL1 COL2 COL3
A blah 3
A abc 4
A def 42
B xyz 10
B aaa 3
C pdq 19
我想将data.table转换成这样
COLA COLACount COLB COLBCount COLC COLCCount
blah 3 xyz 10 pdq 19
abc 4 aaa 3
def 42
我不确定从哪里开始(或称呼它)。 我考虑过要做以下事情:
但是我感觉可能会有简化程序的r包/方法。
谢谢您的任何建议。
答案 0 :(得分:0)
cbind.fill <- function(...){
nm <- list(...)
nm <- lapply(nm, as.matrix)
n <- max(sapply(nm, nrow))
do.call(cbind, lapply(nm, function (x)
rbind(x, matrix(, n-nrow(x), ncol(x)))))
} #code from package rowr
do.call(cbind.fill, split(dt, dt$COL1))