R cbind 与获取粘贴

R cbind with get paste

cbind() 函数相当于 x <- cbind(a,b)

其中可以为函数 b = get(paste0('var',i))

指定列名 'b'

x <- cbind(a,b = get(paste0('var',i)))

我正在尝试执行以下操作:

x <- cbind(a, get(paste0('var',i))) = j),其中“j”可以是向量或函数。

但是,出现以下错误:Error: unexpected '=' in "x <- cbind(a, get(paste0('var',i))) = j)"

如果我只指定"x <- cbind(a, get(paste0('var',i))))",那么第2列名称是"get(paste0('var',i))))",不方便。

如何在 cbind()rbind()bind_cols() 中使用函数 get(paste()) 定义列名?或者替代解决方案是什么?

举个例子有助于理解问题,但也许是这个?

x <- cbind(a, j)
colnames(x)[2] <- get(paste0('var',i))

或者如果你想在单行中完成 -

x <- cbind(a, setNames(j, get(paste0('var',i))))

我们可以使用

x <- data.frame(a, j)
colnames(x)[2] <- get(paste('var', i, sep=""))

或使用tibble

tibble(a, !! b := j)