R:字符串<->变量名

最近想批量处理一批数据,需要对数据批量命名。
这里R有两个基础函数:

  • assign('a',1)
  • get0('a')

用法

用法来说,assign是分配的意思,即将该value(1)分配给这个变量名(a)。
get0是获取的意思,即通过该变量名"a"获取这个变量的值。
因此:

assign("a",1)等价于给a赋值
get0('a')等价于调用a

因此,get不能用于赋值,只能调用已有的变量名。

一些FAQ

具体在使用get0()的时候,
get0save Rdata的时候就会报错

save(get0("a"),file="123.Rdata")
## error!!!
  • 原因在于,save函数有自己的将字符串当成变量名的参数方法,因此需要使用其原装的参数list
save(list="a",file="123.Rdata")
  • 关于save的新发现
    save一回可以存储好多变量到一个文件。
save(list=c('a','b','c'),file="123.Rdata")

你可能感兴趣的:(R:字符串<->变量名)