Rでデータフレームから特定の列を削除したい

やりたいこと

データフレームから特定の列だけを削除したい。

でも、列の指定はインデックスじゃなくて、列名で指定したい。

解決策

setdiff関数を使う。

書式

df[setdiff(colnames(df), "除外したい列名")]

※ こっちでもOK。というか、こっちの方が書式的には正しい。

df[, setdiff(colnames(df), "除外したい列名")]

setdiff関数は、差分を取ってくれる関数。

第一引数の要素から、第二引数の要素を削除して返してくれる。

なので、setdiff関数の結果をデータフレームに与えてフィルタリングしてやればよい。

参考