最近想批量處理一批數(shù)據(jù)千元,需要對(duì)數(shù)據(jù)批量命名不脯。
這里R有兩個(gè)基礎(chǔ)函數(shù):
- assign('a',1)
- get0('a')
用法
用法來說渣刷,assign
是分配的意思苦锨,即將該value(1)分配給這個(gè)變量名(a)。
get0
是獲取的意思药磺,即通過該變量名"a"獲取這個(gè)變量的值告组。
因此:
assign("a",1)等價(jià)于給a賦值
get0('a')等價(jià)于調(diào)用a
因此,get不能用于賦值癌佩,只能調(diào)用已有的變量名木缝。
一些FAQ
具體在使用get0()
的時(shí)候,
get0
在save
Rdata的時(shí)候就會(huì)報(bào)錯(cuò)
save(get0("a"),file="123.Rdata")
## error!!!
- 原因在于围辙,
save
函數(shù)有自己的將字符串當(dāng)成變量名的參數(shù)方法我碟,因此需要使用其原裝的參數(shù)list
save(list="a",file="123.Rdata")
- 關(guān)于
save
的新發(fā)現(xiàn)
save一回可以存儲(chǔ)好多變量到一個(gè)文件。
save(list=c('a','b','c'),file="123.Rdata")