データフレームの列に変数を使ってアクセスするときは[[]]を使う
やりたいことはhogeという列をもったdfrmというデータフレームがあったときにhogeが入ったrow_nameという変数を使ってアクセスしたいというもの。
row_name <- hoge # TODO: row_nameを使ってdfrm$hogeのようにアクセスするにはどうやって書けばいいの?!
いつも
dfrm$name
というアクセス方法しかやったことがなく「これきっとシンタックスシュガーで何かしら書き方あるんだろうなぁ」と思ってRクックブックをパラパラしたらP.66にあった。
1つの列を選択するには、以下のリスト表現のいずれかを使います。
dfrm[["name"]]nameという名前の1列を返します。
dfrm$name構文が異なるだけで上記と同じです。
ということで先の場合には、
dfrm[[row_name]]
でいけました。