機略戦記

Maneuver warfare

R: factor型の変数から「次のlevelのfactor」を得たい

課題

> week <- factor(c('月', '火', '水', '木', '金', '土', '日'), levels=c('月', '火', '水', '木', '金', '土', '日'))
> week
[1] 月 火 水 木 金 土 日
Levels: 月 火 水 木 金 土 日
> monday <- week[1]
> monday
[1] 月
Levels: 月 火 水 木 金 土 日

こういう前提の時に、変数mondayからを得たい。

結論

こうすると取れる。

> week[as.numeric(monday) + 1]
[1] 火
Levels: 月 火 水 木 金 土 日

感想

  • mondayas.numeric(数値にする)って概念的におかしい気がするので、なんかもうちょっと別の書き方ができないものか。