R言語でデータを範囲ごとにランク付けする方法
R言語では、cut()関数を用いてデータを指定範囲で区切って等級に分類できます。
数値を持つベクトルdataがあるとします。
data <- c(10, 20, 30, 40, 50, 60, 70, 80, 90, 100)
カット()関数を使用してデータを範囲別にレベルに分割できます(例えば、データを4つのレベルに分割する場合)
cut_data <- cut(data, breaks = c(0, 25, 50, 75, 100), labels = c("低", "中低", "中高", "高"))
上記のコードで行間、列間の境界線はbreaksパラメータにより指定され、各レベルのラベルはlabelsパラメータにより指定されます。
上記コードを実行すると、cut_data にはランクが含まれたベクトルが入ります。
[1] 低 中低 中低 中高 中高 中高 高 高 高 高
Levels: 低 < 中低 < 中高 < 高
cat()関数の返り値は,各数値がカテゴリのラベルに対応するファクター型のベクトルとなります。
lowestの範囲を含めたい場合はinclude.lowestパラメータをTRUEに設定することもできます。ラベルのパラメータを指定しない場合は、分割範囲が値ラベルとしてデフォルトで使用されます。
ご質問の回答になっておりましたら幸いです。
追加のご質問等ありましたら、お気軽にお問い合わせください。