我首先定義了一個新變量x
,然後創建了一個函數,它需要在其體內(不作爲參數)使用x
。見下文爲什麼這個簡單的功能不起作用?
x <- c(1,2,3)
f1 <- function() {
x^2
}
rm(x)
f2 <- function() {
x <- c(1,2,3)
f1()
}
f(2)
Error in f1() : object 'x' not found
代碼當我除去x
,並定義新的函數f2
該第一限定x
然後執行f1
,它顯示對象未找到x
。
我只是想知道爲什麼這不起作用,我怎麼能克服這個問題。我不想x
被稱爲f1
中的參數。
請提供適當的標題,因爲我不知道這是什麼樣的問題。
沿環境「鏈」('parent.env')搜索變量名稱。 'f2'內聲明的'x'不在任何父環境中,而在「兄弟」環境中。請閱讀http://adv-r.had.co.nz/Environments。html的基本知識來詳細瞭解這個問題 –