R で重複を数える方法: 例付き
次のメソッドを使用して、R のデータ フレーム内の重複をカウントできます。
方法 1: 列内の重複値を数える
sum(duplicated(df$my_column))
方法 2: 重複行をカウントする
nrow(df[duplicated(df), ])
方法 3: 一意の行ごとに重複をカウントする
library (dplyr)
df %>% group_by_all() %>% count
次の例は、R の次のデータ フレームで各メソッドを実際に使用する方法を示しています。
#create data frame
df = data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'G', 'F', 'G', 'G', 'F', 'F'),
points=c(5, 5, 8, 10, 5, 7, 10, 10))
#view data frame
df
team position points
1 GA 5
2 AG 5
3 AG 8
4 AF 10
5 BG 5
6 BG 7
7 BF 10
8 BF 10
例 1: 列内の重複値を数える
次のコードは、ポイント列の重複値の数をカウントする方法を示しています。
#count number of duplicate values in points column
sum(duplicated(df$points))
[1] 4
ポイント列に重複した値が4 つあることがわかります。
例 2: 重複行をカウントする
次のコードは、データ フレーム内の重複行の数をカウントする方法を示しています。
#count number of duplicate rows
nrow(df[duplicated(df), ])
[1] 2
データ フレーム内に2 つの重複行があることがわかります。
次の構文を使用して、これらの 2 つの重複行を表示できます。
#display duplicated rows
df[duplicated(df), ]
team position points
2 AG 5
8 BF 10
例 3: 一意の行ごとに重複をカウントする
次のコードは、データ フレーム内の各一意の行の重複数をカウントする方法を示しています。
library (dplyr)
#count number of duplicate rows in data frame
df %>% group_by_all() %>% count
# A tibble: 6 x 4
# Groups: team, position, points [6]
team position points n
1 AF 10 1
2 AG 5 2
3 GA 8 1
4 BF 10 2
5 BG 5 1
6 BG 7 1
列nには、一意の各行の重複数が表示されます。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。