簡體   English   中英

RCaller:防止自動錯誤打印

[英]RCaller: prevent automatic error printing

我正在使用RCallerJava application的數據幀執行一些分析。 更具體地說,我想使用RCEM庫運行Coarsened Exact Matching

CEM而言,如果找到任何匹配項,它將返回有關數學計算的一些數據。 否則(找不到匹配項)它將失敗。

當我從Java application調用runAndReturnResult方法時,如果CEMR失敗,則RCaller自動在Java application's console上打印我添加到RCode實例中的所有代碼。

有沒有辦法防止這種打印? 我的意思是,我想忽略找不到匹配項的情況,然后繼續前進,而不在控制台上打印消息。

預先感謝任何可以提供幫助的人。

有兩種方法可以解決此問題:

  • RCaller使用的是java.util.logging.Logger ,因此您需要添加一個logback.xml - file來禁用logger的輸出。
  • R使用tryCatch({}) ,以使您的R code不會中斷->不會觸發Java任何錯誤。

我建議第二種解決方案。

更新:

您必須添加一個error - block

mat <- tryCatch({
   cem(treatment = "c_CLUSTER", data = df, drop = dp))
 }, error = function(e) {
    NULL # or do something else
 }, finally = {
 })

而且,如果您想忽略所有warnings ,請將您的method call包裝在preventWarnings suppressWarnings(<method-call>)

或者,您也可以在tryCatch - block添加warning - block tryCatch - block

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM