R言語の警告warningを非表示にする方法を紹介します。
警告の設定を変更する方法を実行例付きで分かりやすく解説していきます。
この記事で扱うプログラミングコードは以下からダウンロードできます。
R言語 警告の消し方
警告の設定の変更
警告を非表示・表示に切り替える方法は以下の通りです。
- options(warn = -1)で警告を非表示
- options(warn = 0)で警告を表示
optionsのwarnの値を変えてあげることで、警告の表示の設定を変更することができます。
下の画像のような赤い警告消したいときに重宝します。
この後、警告を非表示にする実行例について見ていきます。
実行例
Rを実行していると、次のような警告が表示されることがしばしばあります。
1 2 3 | > warning("warning") 警告メッセージ: warning |
この警告を消したいときは、optionsのwarnを変更してあげる必要があります。
警告の前にoptions(warn = -1)を加えることで、警告を非表示にすることができます。
1 2 | > options(warn = -1) #警告を非表示 > warning("warning") |
デフォルトの警告が表示される状態に戻したい場合は、options(warn = 0)にします。
1 | options(warn = 0) #警告を表示 |
ここから先は、関数warningを使って強制的に警告を出すような例ではなく、もっと具体的な警告の非表示の消し方について見ていきます。
解析をする中で、次のように結果をファイルに上書きする際に警告が良く発生します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | > for (i in seq_len(10)) { + write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, sep = "\t", row.names = FALSE) + } 警告メッセージ: 1: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 2: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 3: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 4: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 5: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 6: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 7: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 8: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 9: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます 10: write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, で: ファイルに列名を加えます <span class="hutoaka"> </span> |
上書きの際の警告を非表示にするには、次のようにwrite.tableの前後をoptions(warn = -1)とoptions(warn = 0)で囲みます。最後にoptions(warn = 0)を実行するのは、警告の設定をデフォルトに戻すためです。
1 2 3 4 5 | > options(warn = -1) #警告を非表示 > for (i in seq_len(10)) { + write.table(t(i * seq_len(10)), "warning.txt", append = TRUE, sep = "\t", row.names = FALSE) + } > options(warn = 0) #警告を表示 |
実行しても警告が表示されなくなりました。
まとめ
R言語で警告warningを非表示にする方法を解説しました。
optionsのwarnを-1にすることで警告を非表示に設定できます。
また、表示するように変更したいときはwarnを0にします。