-1
我是新來的R.所以基本上我有2個問題:修改對象中的R
- 在C++中,我們可以通過作爲參考,以便能夠從一個函數返回多個修改對象的對象。什麼是等效的方式來修改函數內的多個對象? (例如,
a
和b
在fyfunc
) - 在下面的代碼中,我想因爲我可以在
myfunc
內訪問b
,所以我可以修改它。但顯然,它是b
的副本。無論如何在myfunc
內部實際修改b
?
a <- c(1,2,3) b <- c(4,5,6) myfunc <- function(a) { b <- b+1 cat(b) # prints: 5 6 7 a <- a+1 } a <- myfunc(a) a b # stil 4 5 6
壞主意。不建議跨環境修改對象。 –
不要像編寫C++代碼那樣編寫R代碼。這肯定會導致以後的困難。 R是一種功能性語言,理想情況下功能不應有副作用(改變其範圍之外的值)。嘗試以更實用的方式重新考慮您的設計。 – MrFlick
有一些方法可以像'<< - '而不是'<-'那樣做,但這是不好的做法。看看這裏:https://stackoverflow.com/questions/2628621/how-do-you-use-scoping-assignment-in-r – Masoud