R语言 入门到精通

R语言 变量赋值和提取 获取环境中的变量并赋值 assign和g

2021-04-13  本文已影响0人  果蝇的小翅膀

目的:

在进行循环的时候,经常需要把环境中的变量通过字符的形式提取出来并赋值给新的变量,涉及到环境变量和字符的转换问题。在R语言中,,可以通过assign()get()这两个函数操作。

get:返回和字符串同名的变量的值
assign:将字符串变量的字符进行复制

get和assign是互为镜像的两个函数。

实例:

n = 100
vari = "data"

for(i in n){
    file_name = sprintf("%s.txt", i)
    x_name = sprintf("%data_s", i)
    assign(x_name,  read.table( file_name) )
}

这样在环境中,就生成了100个变量,分别为 data_1到data_100。因此assign可以进行批量的赋值,并且有规律的控制变量名

比如我们需要把上面的data_1到data_100的变量存成rda

#查看以data开通的变量
vars = ls(pattern = "^data")

for(i in vars){
    save( get(i), file = sprintf(".rda", i) )
}

这样我们就把data开头的数据通循环的方式,写入到了rda的数据中。

参考文献:

https://zhuanlan.zhihu.com/p/30383865

上一篇下一篇

猜你喜欢

热点阅读