我想将 R data.table 转换为行列表(每行由一个列表表示)。到目前为止,我找到了两种方法:
library(data.table)
x.dt = data.table(x = seq(1, 10), y = c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j"), key="x")
# Using lapply & split
x.list.1 = lapply(split(x.dt, rownames(x.dt)), as.list)
# Using Lapply
x.list.2 = lapply(as.list(1:nrow(x.dt)), function(row) as.list(x.dt[row[1],]))
我觉得它们都有点笨拙。有没有更好(更简洁)的方法来做到这一点?
亲切的问候, 赫尔曼
最佳答案
使用按行应用:
x.list.3 <- apply(x.dt,1,as.list)
关于R data.table 到行列表;更好的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27784076/