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)))
@用户5249203my.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)))