R で n() 関数を使用する方法 (例付き)
R のdplyrパッケージのn()関数を使用して、グループ内の観測値の数をカウントできます。
この機能を実際に使用する一般的な 3 つの方法を次に示します。
方法 1: n() を使用してグループごとに観測値をカウントする
df %>%
group_by(group_variable) %>%
summarize(count = n())
方法 2: n() を使用して、グループごとの観測値を表示する列を追加します。
df %>%
group_by(group_variable) %>%
mutate(count = n())
方法 3: n() を使用して、グループごとの観測値に基づいてフィルター処理します。
df %>%
group_by(group_variable) %>%
filter(n() > 15 )
次の例は、さまざまなバスケットボール選手に関する情報を含む R の次のデータ フレームを使用して各メソッドを実際に使用する方法を示しています。
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C'), points=c(22, 25, 25, 20, 29, 13), assists=c(10, 12, 9, 4, 11, 10), rebounds=c(9, 8, 5, 10, 14, 12)) #view data frame df team points assists rebounds 1 A 22 10 9 2 A 25 12 8 3 to 25 9 5 4 B 20 4 10 5 B 29 11 14 6 C 13 10 12
例 1: n() を使用してグループごとに観測値をカウントする
次のコードは、 n()関数とsummarise()関数を使用して、チームごとの観測数をカウントする方法を示しています。
library (dplyr) #count number of observations by team df %>% group_by(team) %>% summarize(count = n()) # A tibble: 3 x 2 team count 1 to 3 2 B 2 3 C 1
結果から次のことがわかります。
- チームAは3回登場
- チームBは2回登場
- チームCは1回登場
例 2: n() を使用して、グループごとの観測値を表示する列を追加します。
次のコードは、 n()関数とmutate()関数を使用して、チームごとの観測数を含む列を日付フレームに追加する方法を示しています。
library (dplyr) #add new column that shows number of observations by team df %>% group_by(team) %>% mutate(count = n()) # A tibble: 6 x 5 # Groups: team [3] team points assists rebounds count 1 to 22 10 9 3 2 to 25 12 8 3 3 to 25 9 5 3 4 B 20 4 10 2 5 B 29 11 14 2 6 C 13 10 12 1
countという新しい列には、データ フレーム内の各行のチーム数が含まれます。
例 3: n() を使用してグループごとの観測値に基づいてフィルター処理する
次のコードは、 n()関数とfilter()関数を使用してデータ フレームをフィルターし、チームが複数回出現する行のみを表示する方法を示しています。
library (dplyr) #filter rows where team count is greater than 1 df %>% group_by(team) %>% filter(n() > 1 ) # A tibble: 5 x 4 # Groups: team [2] team points assists rebounds 1 A 22 10 9 2 A 25 12 8 3 to 25 9 5 4 B 20 4 10 5 B 29 11 14
結果のデータ フレームには、チームが「A」または「B」である行のみが含まれることに注意してください。これは、番号が 1 より大きいチームはこれらのみであるためです。
追加リソース
次のチュートリアルでは、R の他の一般的な関数の使用方法について説明します。
dplyr で across() 関数を使用する方法
dplyrでrelocate()関数を使用する方法
dplyrでslice()関数を使用する方法