【发布时间】:2016-08-11 15:21:33
【问题描述】:
我有一个名字和一个向量
my.name <- 'data.values'
my.vec <- 1:5
我想制作一个 tibble/tbl_df/data_frame,其中有一列以 my.name 作为该列的名称,my.vec 作为值。我有的是
df <- data_frame(placeholder = rep(NA, length(my.vec)))
df[[my.name]] <- my.vec
df[['placeholder']] <- NULL
这只是感觉很愚蠢。有没有更简单的方法来做到这一点?
我也对我有多个向量和多个名称的情况感兴趣,例如
my.name1 <- 'data.values.day1'
my.name2 <- 'data.values.day2'
my.vec1 <- 1:5
my.vec2 <- 2:6
...
【问题讨论】:
-
@user5249203
my.name不会被评估,所以你最终会得到一个data.frame和一个名为my.name的列。 -
使用命名列表,
as_data_frame(setNames(list(my.vec), my.name)) -
或重命名
data_frame(my.vec) %>% rename(my.name = my.vec)