我在R中寫了一個函數來打印任何消息都記錄文件和控制檯。但是,如果在運行代碼時出現任何意外錯誤,則僅向控制檯顯示錯誤。有沒有辦法將錯誤消息寫入控制檯和日誌文件?下面是函數..錯誤處理和登錄R
log_con <- file("Text1.txt", open="a")
loggerfn<-function(Message,LogConnection=log_con){
cat(Message, file = LogConnection)
cat(Message)
}
下面是示例代碼...
for (i in 1:10)
{
loggerfn("loop begins\n",log_con)
a <- rnorm(n = 100, mean = i, sd = 5)
loggerfn(mean(a),log_con)
loggerfn("loop Completed\n",log_con)
if(i==8){
sdfs
}
}
在上面的代碼我特意通過提供未定義的對象sdfd.Below提供錯誤消息引入的誤差僅示出在控制檯中,有沒有辦法將錯誤消息寫入控制檯和日誌文件?
Error: object 'sdfs' not found
你聽說過在R中使用try-catch塊嗎? –
是的..我正在處理一些重大項目。我無法預測錯誤使用try,catch塊在每個模塊中。 – PPC