我有R代碼,它運行一段代碼,用於計算數據框中每個組的統計數據列。在數據框中直接在控制檯中運行代碼時,它按預期工作。R:在控制檯中直接運行R代碼時與在函數中包裝時不同的結果
但是,我想製作一個包含此功能的包。當我將原始代碼包裝在以數據框爲參數的函數中並將新數據列返回給傳入的數據框時,結果列不相同。
我想知道它是否與R中使用的範圍有關,但是在我的代碼的多個變體之後,我似乎無法解決問題。我也遇到過這個問題。
編輯:我發現,當我源代碼時,它說它找不到我上面定義的函數。這是該地區時,我的代碼是給不同的結果,因爲我已經包裹在一個try catch塊其他函數調用
例子:
otherFunction <- function(df, ...){
...
}
myFunction <- function(df){
result <- tryCatch({
otherFunction(df, ...)
}, error = function(e) {
NA # the result is always being set to NA
})
return result
}
...
myDf <- ...
myFunction(myDf)
error: "could not find function "otherFunction""
請確保我們實際上可以執行你的[重複的例子(https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example),否則它不是對我非常有幫助。 – MrFlick