批量生成、调用含参数变量
使用get()、assign()和paste()函数实现
函数分析
get()
get(x, pos = -1, envir = as.environment(pos), mode = “any”, inherits = TRUE)
返回对应变量的值。
当输入的变量是不存在时,会报错。需要注意的是变量名称需要使用引号。
> get(a)
Error in get(a) : object 'a' not found
> a=1
> get(a)
Error in get(a) : invalid first argument
> get('a')
[1] 1
assign()
assign(x, value, pos = -1, envir = as.environment(pos), inherits = FALSE, immediate = TRUE)
将value赋值给x
和get()相同,需要对操作的变量使用引号。assign()函数赋值的对象不存在时,将自动创建该对象,当value指向一个不存在的变量时,同样会报错。
> a=1
> assign(x,a)
Error in assign(x, a) : object 'x' not found
> assign('x',a)
> x
[1] 1
> assign('x',b)
Error in assign("x&