Dplyr で slice() 関数を使用する方法 (例付き)


R のdplyrパッケージのスライス()関数を使用して、整数の位置に基づいて行のサブセットを作成できます。

次のメソッドを使用して、データ フレーム内の特定の行をサブセット化できます。

方法 1: 特定の行をサブセット化する

 #get row 3 only
df %>% slice(3)

方法 2: 複数の行をサブセット化する

 #get rows 2, 5, and 6
df %>% slice(2, 5, 6)

方法 3: 行範囲のサブセット化

 #get rows 1 through 3
df %>% slice(1:3)

方法 4: グループごとに行をサブセット化する

 #get first row by group
df %>%
  group_by(var1) %>%
  slice(1)

次の例は、次のデータ フレームで各メソッドを使用する方法を示しています。

 #create dataset
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C'),
                 points=c(1, 2, 3, 4, 5, 6, 7),
                 assists=c(1, 5, 2, 3, 2, 2, 0))

#view dataset
df

  team points assists
1 A 1 1
2 to 2 5
3 To 3 2
4 B 4 3
5 B 5 2
6 C 6 2
7 C 7 0

例 1: 特定の行のサブセット

次のコードは、 slice()関数を使用してデータ フレームの行 3 のみを選択する方法を示しています。

 #get row 3 only
df %>% slice(3)

  team points assists
1 to 3 2

例 2: 複数行のサブセット

次のコードは、 slice()関数を使用してデータ フレーム内の複数の特定の行を選択する方法を示しています。

 #get rows 2, 5, and 6
df %>% slice(2, 5, 6)

  team points assists
1 to 2 5
2 B 5 2
3 C 6 2

例 3: 行範囲のサブセット

次のコードは、 slice()関数を使用して 1 から 3 までのすべての行を選択する方法を示しています。

 #get rows 1 through 3
df %>% slice(1:3)

  team points assists
1 A 1 1
2 to 2 5
3 To 3 2

例 4: グループごとに行をサブセットする

次のコードは、 slice()関数を使用して特定のグループの最初の行を選択する方法を示しています。

 #get first row by group
df %>%
  group_by(team) %>%
  slice(1)

# A tibble: 3 x 3
# Groups: team [3]
  team points assists
       
1 A 1 1
2 B 4 3
3 C 6 2

追加リソース

次のチュートリアルでは、dplyr を使用して他の一般的な機能を実行する方法について説明します。

dplyrを使用して行を削除する方法
dplyrを使用して行を配置する方法
dplyrを使って複数の条件でフィルタリングする方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です