我想找到一組函數並保存它們,因爲我想將它們發送到Rdata文件中的遠程服務器,並且我不想在服務器上安裝新的程序包。如何在函數內使用ls()搜索環境?
雖然我使用下面的方法出現錯誤,但更容易/更好的方法是受歡迎的。
MWE:
這裏有兩個虛擬功能:
abcd.fun.1 <- function() return(1)
abcd.fun.2 <- function() return(2)
我可以識別虛擬功能:
ls()[grep('abcd', ls())]
但是,當我在一個函數把這個包:
find.test <- function(x) {
return(ls()[grep(x, ls())])
}
find.test('abcd')
該函數返回character(0)
最後,我想
save(find.test('abcd'), file = test.Rdata)
globalenv()這些天最好是 – hadley
@hadley:你能解釋一下爲什麼嗎? –
嗯,我可以發誓它建議在文檔中,但我猜不是。在這種情況下,這只是個人觀點:我認爲使用功能比全球更好。 – hadley