代碼由兩個檔案組成:
caller.R:
a <- 1
source("s1.R", encoding = "UTF-8")
b <- fa()
s1.R:
fa <- function() {
a*2
}
此代碼caller.R在 RStudio IDE 中源 (Crtl Shift S)時運行流暢,提供正確的預期結果b=2。
但是,當caller.R通過“Source as Local Job...”獲取時,它會拋出一個錯誤(葡萄牙語),這意味著執行被中斷,因為它無法找到物件“a”:
Error in fa() : objeto 'a' n?o encontrado
Calls: sourceWithProgress -> eval -> eval -> fa
Execu??o interrompida
我已經嘗試了所有可能的“作為本地作業的源...”選項組合(“運行帶有全域環境副本的作業等),但都沒有成功。
我必須做什么才能將 caller.R 作為本地作業運行?
uj5u.com熱心網友回復:
如果你想讓它在相同的環境中可用,你可以嘗試使用 local = TRUE
source("s1.R", encoding = "UTF-8", local = TRUE)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/324563.html
