R で警告を抑制する方法 (例あり)
次の方法を使用して、R での警告を抑制できます。
方法 1: 特定の行の警告を削除する
suppressWarnings(one line of code)
方法 2: 警告をグローバルに削除する
suppressWarnings({ several lines of code just a bunch of code lots and lots of code })
次の例は、次のコードで各メソッドを実際に使用する方法を示しています。これにより、2 つの警告メッセージが生成されます。
#define character vector x <- c('1', '2', '3', NA, '4', 'Hey') #convert to numeric vector x_numeric <- as. numeric (x) #display digital vector print (x_numeric) Warning message: NAs introduced by coercion [1] 1 2 3 NA 4 NA #define two vectors a <- c(1, 2, 3, 4, 5) b <- c(6, 7, 8, 9) #add the two vectors a+b [1] 7 9 11 13 11 Warning message: In a + b: longer object length is not a multiple of shorter object length
方法 1: 特定の行の警告を削除する
assignWarnings()関数をas.numeric()関数の周囲にラップして、コードの最初の警告のみを抑制できます。
#define character vector x <- c('1', '2', '3', NA, '4', 'Hey') #convert to numeric vector suppressWarnings(x_numeric <- as.numeric (x)) #display digital vector print (x_numeric) [1] 1 2 3 NA 4 NA #define two vectors a <- c(1, 2, 3, 4, 5) b <- c(6, 7, 8, 9) #add the two vectors a+b [1] 7 9 11 13 11 Warning message: In a + b: longer object length is not a multiple of shorter object length
最初の警告メッセージは表示されなくなりましたが、2 番目の警告メッセージは引き続き表示されることに注意してください。
方法 2: 警告をグローバルに削除する
すべての警告をグローバルに抑制するには、suppressWarnings({})関数をコード全体にラップします。
suppressWarnings({ #define character vector x <- c('1', '2', '3', NA, '4', 'Hey') #convert to numeric vector suppressWarnings(x_numeric <- as.numeric (x)) #display digital vector print (x_numeric) [1] 1 2 3 NA 4 NA #define two vectors a <- c(1, 2, 3, 4, 5) b <- c(6, 7, 8, 9) #add the two vectors a+b [1] 7 9 11 13 11 })
コード全体をsuppressWarnings({})関数で囲んでいるため、今回は警告が表示されないことに注意してください。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。
警告 R: getOption(“max.print”) に達しましたを回避する方法
R の処理方法 警告: glm.fit: アルゴリズムが収束しませんでした
修正方法: runtimewarning: double_scalars で無効な値が検出されました