我正在尝试以下操作:
a <- "b"
data.frame (a = c (1:3))
返回(当然):
data.frame (a = c (1:3))
> a
> 1 1
> 2 2
> 3 3
我想要的是:
a <- "b"
data.frame (foo (a) = c (1:3))
> b
> 1 1
> 2 2
> 3 3
是否有一种方法告诉R使用存储在对象("b"
)中的字符串(a
)作为列名?
编辑:我知道我的问题的标题可能不是很有意义。有改进的建议吗?
答案 0 :(得分:1)
一个选项是sudo apt-get -y update
并根据tibble
的lh评估(!!
)对象
:=
我们还可以使用tibble(!! a := 1:3)
# A tibble: 3 x 1
# b
# <int>
#1 1
#2 2
#3 3
中的set_names
dplyr
答案 1 :(得分:1)
您也可以使用setNames
setNames(data.frame(1:3), a)
# b
#1 1
#2 2
#3 3
或者使用matrix
并添加dimnames
data.frame(matrix(1:3, ncol = 1, dimnames = list(NULL, a)))