始める無料で始める

数値のデフォルト

cut_by_quantile() は、四分位点などの分位数をカットポイントとして使い、数値ベクトルをカテゴリ変数に変換します。とても便利な関数ですが、今のままでは動かすのに 5 つの引数を指定する必要があります。これでは考えることも入力も多すぎます。

デフォルト引数を指定すれば、もっと使いやすくできます。まずは、x をいくつのカテゴリに分割するかを指定する n から始めましょう。

スネーク・リバーへの訪問回数を表す数値ベクトルが n_visits として用意されています。

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

R関数入門

コースを見る

演習の手順

  • cut_by_quantile() の定義を更新し、引数 n のデフォルト値を 5 にします。
  • cut_by_quantile() の呼び出しから n 引数を取り除きます。

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

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

# Set the default for n to 5
cut_by_quantile <- function(x, n, na.rm, labels, interval_type) {
  probs <- seq(0, 1, length.out = n + 1)
  qtiles <- quantile(x, probs, na.rm = na.rm, names = FALSE)
  right <- switch(interval_type, "(lo, hi]" = TRUE, "[lo, hi)" = FALSE)
  cut(x, qtiles, labels = labels, right = right, include.lowest = TRUE)
}

# Remove the n argument from the call
cut_by_quantile(
  n_visits, 
  n = 5, 
  na.rm = FALSE, 
  labels = c("very low", "low", "medium", "high", "very high"),
  interval_type = "(lo, hi]"
)
コードを編集して実行