概要
dplyr
パッケージに含まれるfilter()
のスコープ付き関数は、行の取得を簡潔なコードで記述できる関数です。
関連ページ
関数
filter_all(.data, .vars_predicate, .preserve = FALSE)
filter_at(.data, .vars, .vars_predicate, .preserve = FALSE)
filter_if(.data, .predicate, .vars_predicate, .preserve = FALSE)
引数 | 指定 | 説明 |
---|---|---|
.data | 必須 | データフレーム |
.preserve | 必須 | グループ情報を再計算したくない場合はTRUEを指定する |
.vars_predicate | 必須 | filterの条件を関数で指定する |
.vars | 必須 | filter_at() で使用する引数対象となる列を変数または文字列で指定する |
.predicate | 必須 | filter_if() で使用する引数対象となる列を返り値がBool型の関数で指定する |
使い方
スコープ付き関数の基本的な使い方は専用の解説ページを参照してください。
解説用データフレーム
df <- tibble::tibble(
x1 = c(1, NA, 3),
x2 = c(4, 5, NA),
)
> df
# A tibble: 3 x 2
x1 x2
<dbl> <dbl>
1 1 4
2 NA 5
3 3 NA
1.NAを含む行を除外する
# 全ての列に対して、NAを含む行を除外する
filter_all(df, .vars_predicate = complete.cases)
# A tibble: 1 x 2
x1 x2
<dbl> <dbl>
1 1 4