1. 学ぶ
  2. /
  3. コース
  4. /
  5. R 入門

Connected

演習

因子水準

データセットを初めて扱うとき、特定の因子水準を持つ因子が含まれていることがよくあります。しかし、わかりやすさなどの理由から、レベルの名前を変更したい場合もあります。Rでは、levels() 関数を使ってこれを行えます。

levels(factor_vector) <- c("name1", "name2",...)

わかりやすい例として、アンケートで得られた生データを見てみましょう。アンケートの定番の質問に、回答者の性別があります。ここでは簡単にするため、"M" と "F" の2つのカテゴリのみが記録されているとします。(アンケートデータでは通常さらに多くのカテゴリが必要ですが、いずれの場合もカテゴリカルデータの保存には因子を使います。)

survey_vector <- c("M", "F", "F", "M", "M")

性別を "M" や "F" という略称で記録するのは、ペンと紙でデータを収集する場合には便利です。しかし、データを分析する際に混乱を招くことがあります。そのため、明確にするために因子水準を "Male" と "Female" から "M" と "F" に変更したいことがよくあります。

注意: レベルを割り当てる順番は重要です。levels(factor_survey_vector) と入力すると、[1] "F" "M" と出力されます。ベクトルの作成時に因子の水準(レベル)を指定しない場合、R は自動的にアルファベット順で割り当てます。"F" を "Female" に、"M" を "Male" に正しく対応させるには、この順番で c("Female", "Male") と水準レベルを設定する必要があります。

指示

100 XP
  • survey_vector から因子ベクトルを作成するコードを確認しましょう。次の指示では factor_survey_vector を使います。
  • factor_survey_vector の因子水準を c("Female", "Male") に変更しましょう。ベクトルの要素の順番に注意してください。