はじめに R に限った話ではありませんが、プログラミングでは、変数に意図した値が格納されていることを確認したり、むやみに時間のかかるプログラミングになっていないかを確認することがあります。R にも、デバッグやボトルネックを見つけるテクニックがあります。 browser 関数を使ったデバッグ手法 関数内でのデバッグを有効にするには browser() 関数を使います。次の例は、引数で与えられた数値に対して、和差積商を計算するユーザー関数に、browser()関数を使用したサンプルスクリプトです。デバッグ実行の開始条件として、「一番目の引数が 8 以上」ということを browser() 関数に指定しています。 関数の作成 ▼サンプルスクリプト func_calc <- function(x,y){ + a <- x + b <- y + browser(expr = x <= 8) + pri
![R言語 - デバッグやボトルネックを発見するテクニック - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/a4a83990281309cab696189842619a37c51ad5a0/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9UiVFOCVBOCU4MCVFOCVBQSU5RSUyMC0lMjAlRTMlODMlODclRTMlODMlOTAlRTMlODMlODMlRTMlODIlQjAlRTMlODIlODQlRTMlODMlOUMlRTMlODMlODglRTMlODMlQUIlRTMlODMlOEQlRTMlODMlODMlRTMlODIlQUYlRTMlODIlOTIlRTclOTklQkElRTglQTYlOEIlRTMlODElOTklRTMlODIlOEIlRTMlODMlODYlRTMlODIlQUYlRTMlODMlOEIlRTMlODMlODMlRTMlODIlQUYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWYwY2YyNDgxMzRiMjA0YjgzMTlhNzMwMGY5NDEyZWU0%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwdWNoaW0mdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWE3YzE2ZmU5YmNhMWFkZDQ2ZDg2OTYxMDExY2E5MDky%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dada2b92f94c3f233fbadf431374aea18)