Jak policzyć różne wartości za pomocą dplyr (z przykładami)


Możesz użyć dowolnej z poniższych metod, aby policzyć liczbę odrębnych wartości w ramce danych R za pomocą funkcji n_distinct() dplyr :

Metoda 1: Policz różne wartości w kolumnie

 n_distinct(df$column_name)

Metoda 2: Policz różne wartości we wszystkich kolumnach

 sapply(df, function (x) n_distinct(x))

Metoda 3: Policz różne wartości według grup

 df %>%
group_by (grouping_column) %>%
summarize (count_distinct = n_distinct(values_column))

Poniższe przykłady pokazują, jak w praktyce zastosować każdą z tych metod z następującą ramką danych:

 library (dplyr)

#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(6, 6, 8, 10, 9, 9, 12, 12),
                 assists=c(3, 6, 4, 2, 4, 5, 5, 9))

#view data frame
df

  team points assists
1 to 6 3
2 to 6 6
3 to 8 4
4 to 10 2
5 B 9 4
6 B 9 5
7 B 12 5
8 B 12 9

Metoda 1: Policz różne wartości w kolumnie

Poniższy kod pokazuje, jak użyć n_distinct() do zliczenia liczby odrębnych wartości w kolumnie „zespół”:

 #count distinct values in 'team' column
n_distinct(df$team)

[1] 2

W kolumnie „zespół” znajdują się 2 różne wartości.

Metoda 2: Policz różne wartości we wszystkich kolumnach

Poniższy kod pokazuje, jak używać funkcji sapply() i n_distinct() do zliczania liczby odrębnych wartości w każdej kolumnie ramki danych:

 #count distinct values in every column
sapply(df, function (x) n_distinct(x))

   team points assists 
      2 5 6

Z wyniku możemy zobaczyć:

  • W kolumnie „zespół” znajdują się 2 różne wartości
  • W kolumnie „punkty” znajduje się 5 różnych wartości
  • W kolumnie „pomoc” znajduje się 6 różnych wartości

Metoda 3: Policz różne wartości według grup

Poniższy kod pokazuje, jak użyć funkcji n_distinct() do zliczenia liczby odrębnych wartości na grupę:

 #count distinct 'points' values by 'team'
df %>%
  group_by (team) %>%
  summarize (distinct_points = n_distinct(points))

# A tibble: 2 x 2
  team distinct_points 
1 to 3
2 B 2

Z wyniku możemy zobaczyć:

  • Istnieją 3 różne wartości punktowe dla drużyny A.
  • Istnieją 2 oddzielne wartości punktowe dla Drużyny B.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje za pomocą dplyr:

Jak przekodować wartości za pomocą dplyr
Jak zamienić NA na Zero w dplyr
Jak sortować zmienne według grup za pomocą dplyr
Jak wybrać pierwszy wiersz według grupy za pomocą dplyr

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *