我正在使用R工作室。有沒有辦法知道R腳本是直接運行還是在另一個腳本中運行?
有沒有辦法知道R腳本是直接由控制檯中的source命令運行還是在另一個腳本中運行?即。另一個腳本來源,這就是第一個腳本的調用。
在某些情況下,這可能對提示某些值有用。
我現在正在做的是將變量設置爲true或false,並在腳本中檢查該變量。這有效,但自動方式更好。
謝謝你的時間。
編輯>>>更多信息
比方說,我有一個運行良好作爲是一個獨立的劇本,但這個劇本是一個過程完成後,另一個腳本運行的一部分。如果我必須同時運行,我可以運行第一個,然後運行第二個;但我也有機會跑第二。
我在問的是如果有一種方法(在第二個腳本中)來驗證第二個是從第一個還是第二個被調用。
看看他簡單的例子(由格雷格·斯諾的回答啓發)
scripta.R:
writeLines("script A")
if (interactive()) writeLines("interactive: true") else writeLines("interactive false")
source("scriptb.r")
scriptb.R:
writeLines("script B")
if (interactive()) writeLines("interactive: true") else writeLines("interactive false")
writeLines("end B")
結果在Rstudio是
script A
interactive: true
script B
interactive: true
end B
after B
我喜歡有類似的東西
script A
interactive: true
script B
interactive: false
end B
after B
我希望現在更清楚。
感謝
請問您爲什麼使用此設置可以讓您更清楚一點?這聽起來有點神祕... –