始める無料で始める

独自の関数を書く(3)

デフォルト値あり・なしの引数の違いは覚えていますか?sd() のドキュメントにある使用例には、次のように記載されています。

sd(x, na.rm = FALSE)

これは、x 関数を正しく呼び出すには sd() を必ず指定する必要がある一方、na.rm にはデフォルト値がすでに設定されているため、省略してもエラーにはならないことを示しています。

Rの自作関数でも、同様にデフォルト値を設定できます。次のような書き方を参考にしてください。

my_fun <- function(arg1, arg2 = val2) {
  body
}

右のエディターには、前回の pow_two() 関数を拡張したバージョンがすでに用意されています。完成させましょう。

この演習はコースの一部です

中級 R

コースを見る

演習の手順

  • print_info という名前のオプション引数を追加し、デフォルト値を TRUE に設定してください。
  • if 関数を print() 構文で囲んでください。この関数は print_infoTRUE のときだけ実行されるようにします。
  • 完成した pow_two() 関数をいろいろ試してみましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Finish the pow_two() function
pow_two <- function(x) {
  y <- x ^ 2
  print(paste(x, "to the power two equals", y))
  return(y)
}
コードを編集して実行