行の取得(スコープ付き関数)

概要

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
Sponsored Link