R 如何从一个或多个向量生成TIBLE/tbl_df/data_帧

R 如何从一个或多个向量生成TIBLE/tbl_df/data_帧,r,dplyr,R,Dplyr,我有一个名字和一个向量 my.name <- 'data.values' my.vec <- 1:5 感觉很傻。有没有更简单的方法 我还对我有多个向量和多个名称的情况感兴趣,例如 my.name1 <- 'data.values.day1' my.name2 <- 'data.values.day2' my.vec1 <- 1:5 my.vec2 <- 2:6 ... my.name1您可以先创建data\u框架,然后设置其列名: my.data <

我有一个名字和一个向量

my.name <- 'data.values'
my.vec <- 1:5
感觉很傻。有没有更简单的方法

我还对我有多个向量和多个名称的情况感兴趣,例如

my.name1 <- 'data.values.day1'
my.name2 <- 'data.values.day2'
my.vec1 <- 1:5
my.vec2 <- 2:6
...

my.name1您可以先创建
data\u框架
,然后设置其列名:

my.data <- data_frame(my.vec.1, my.vec.2, ...)
names(my.data) <- c(my.name.1, my.name.2, ...) # Order is important here

my.data我认为最好的答案是评论

DirtySockSniffer建议:

as_data_frame(setNames(list(my.vec), my.name)))
这很好地概括了多列情况

as_data_frame(setNames(list(my.vec1, my.vec2), 
                       c(my.name1, my.name2)))

@用户5249203
my.name
将不会被计算,因此您将得到一个名为
my.name
的列的
data.frame
。使用一个命名列表,
作为数据框架(setNames(list(my.vec),my.name))
或重命名它
数据框架(my.vec)%%>%rename(my.name=my.vec)
as_data_frame(setNames(list(my.vec1, my.vec2), 
                       c(my.name1, my.name2)))