これは単純な問題であるはずですが、私は苦労しています。
データフレームから除外する変数名のベクトルがあります。
_df <- data.frame(matrix(rexp(50), nrow = 10, ncol = 5))
names(df) <- paste0(rep("variable_", 5), 1:5)
excluded_vars <- c("variable_1", "variable_3")
_
_-
_を使用してselectステートメントでオブジェクトを除外するだけでうまくいくと思いました。
_select(df, -excluded_vars)
_
しかし、次のエラーが表示されます。
-excluded_varsのエラー:単項演算子への無効な引数
select_()
を使用する場合も同じです
何か案は?
one_of
関数を使用する必要があります。
select(df, -one_of(excluded_vars))
変数名に基づく選択の詳細については、 select のdplyr
ドキュメントの便利な関数のセクションを参照してください。
Dplyrの最新バージョンでは、以下が機能するようになりました。
select(df, -excluded_vars)
_exclude_vars
_で-c()
を使用するだけです。
このような:
_select(df, -c(excluded_vars))
_
select_
、単純にsetdiff
を使用できます。
select_(df, .dots = setdiff(colnames(df), excluded_vars))