我在R中編寫了很多函數,有時我會遇到全局變量和局部變量的問題。更精確地說,如果我有以下的全局變量和函數:R中的參數/參數名稱 - 局部變量的問題
# Defined before function, globally:
ret <- 0.12314
fa <- 789989.938
prasx <- function(ret, fa, ctry, arb, x = "4"){
# do some stuff...
return (yxc)
}
然後,我通過調用該函數:
prasx(ret, fa, 'US', 3874.38) # OR
prasx('US', 3874.38)
我有時會收到錯誤。很明顯,我認爲如果全局變量在工作區擦除後未初始化,就會發生這種情況。
我想知道這是否是在R中編寫函數的好方法,或者如果您最好對全局變量名稱使用不同的參數/參數名稱作爲函數。 很多時候你只是想將全局變量轉發給函數;這就是爲什麼我通常給他們平等的名字。另外我想,避免下面的函數調用總是比較安全的,沒有規範?
謝謝。
謝謝!現在我知道了:)因爲我沒有足夠的聲望,所以我不能投票給你:/ – user3032689