R data.table : turn a vector into a one row data. 表

标签 r optimization data.table

我有一个字符向量 x我想以快速的方式将其转换为一行 data.table。命令 data.table(x)返回一列数据表。现在,data.table(t(x))完成工作,但我想知道是否有更快的方法。

最佳答案

我们可以用

x <- 1:5
setDT(as.list(x))[]

基准
v1 <- 1:1e5
system.time(data.table(t(v1)))
#   user  system elapsed 
#  12.95    0.01   12.97 
system.time(setDT(as.list(v1)))
#  user  system elapsed 
#   5.75    0.00    5.75 

system.time(as.data.table(t(v1)))
#    user  system elapsed 
#   6.35    0.00    6.34 

更新

如果以上练习它到rbind带有 data.table 的向量,我们不需要转换 vectordata.table
 d1 <- data.table(V1= 1:3, V2= 4:6, V3=7:9)
 rbindlist(list(d1, as.list(1:3)))

关于R data.table : turn a vector into a one row data. 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36221402/

相关文章:

r - 合并多个data.table

r - 使用ggplot为 map 上不同的相邻区域着色

r - Docker中的ShinyDirButton与fileInput

r - 有效地组合几个 dcast data.table(共享相同的 key )

ruby - GC.disable 的任何性能缺点?

css - 网站优化 - css 和图像

r - 按列模式和绑定(bind)行拆分 data.frame R

r - 有没有办法用 sparklyr 处理嵌套数据?

r - 对段落编号进行排序

通过乘以边权重给出成本时找到最小生成树的算法