0

我希望能够用 R 创建一个向量,但在函数调用中确定它的名称。在 SAS 中,我将使用宏语言执行循环,但使用 R,我找不到如何按名称引用变量,例如(显然这不起作用,但它描述了我想做的事情)

fun <- function(X, vectorName) {
    paste(vectorName) <- 1:X
}

我希望能够打电话fun(5, v)并在最后得到一个向量v = c(1,2,3,4,5)

4

1 回答 1

2

虽然这是可能的,但这不是你应该做的事情。一个函数应该只有一个返回值,然后你可以分配它,例如:

v <- seq_len(5)

或者,如果您必须以编程方式传递变量名称:

myname <- "w"
assign(myname, seq_len(5))

(虽然我想不出你需要它的原因。)

于 2013-11-10T17:25:05.157 回答