我经常需要转换一个data.table,每次需要几行代码,我想知道是否有比我更好的解决方案.
如果我们拿样品表
library(data.table)
mydata <- data.table(col0=c("row1","row2","row3"),
col1=c(11,21,31),
col2=c(12,22,32),
col3=c(13,23,33))
mydata
# col0 col1 col2 col3
# row1 11 12 13
# row2 21 22 23
# row3 31 32 33
Run Code Online (Sandbox Code Playgroud)
只需转置它t(),它将转换为矩阵并转换为character类型,而应用于data.table此类矩阵将丢失row.names:
t(mydata)
# [,1] [,2] [,3]
# col0 "row1" "row2" "row3"
# col1 "11" "21" "31"
# col2 "12" "22" "32"
# col3 "13" "23" "33"
data.table(t(mydata))
# V1 V2 V3
# row1 row2 row3
# 11 21 31
# …Run Code Online (Sandbox Code Playgroud)