首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R data.table:将向量转换为一行data.table

R data.table:将向量转换为一行data.table
EN

Stack Overflow用户
提问于 2016-03-25 13:59:44
回答 1查看 5.4K关注 0票数 4

我有一个字符向量x,我想以一种快速的方式将它转化为一行data.table。命令data.table(x)返回一个列data.table。现在,data.table(t(x))完成了任务,但我想知道是否有更快的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-25 14:03:45

我们可以用

代码语言:javascript
复制
x <- 1:5
setDT(as.list(x))[]

基准测试

代码语言:javascript
复制
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的向量,我们就不需要将vector转换成data.table

代码语言:javascript
复制
 d1 <- data.table(V1= 1:3, V2= 4:6, V3=7:9)
 rbindlist(list(d1, as.list(1:3)))
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36221402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档