Dplyr kullanılarak farklı değerler nasıl sayılır (örneklerle)


dplyr’in n_distinct() işlevini kullanarak bir R veri çerçevesindeki farklı değerlerin sayısını saymak için aşağıdaki yöntemlerden herhangi birini kullanabilirsiniz:

Yöntem 1: Bir sütundaki farklı değerleri sayın

 n_distinct(df$column_name)

Yöntem 2: Tüm sütunlardaki farklı değerleri sayın

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

Yöntem 3: Farklı değerleri gruba göre sayın

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

Aşağıdaki örnekler, bu yöntemlerin her birinin pratikte aşağıdaki veri çerçevesiyle nasıl kullanılacağını gösterir:

 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

Yöntem 1: Bir sütundaki farklı değerleri sayın

Aşağıdaki kod, ‘ekip’ sütunundaki farklı değerlerin sayısını saymak için n_distinct() işlevinin nasıl kullanılacağını gösterir:

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

[1] 2

‘Takım’ sütununda 2 farklı değer bulunmaktadır.

Yöntem 2: Tüm sütunlardaki farklı değerleri sayın

Aşağıdaki kod, veri çerçevesinin her sütunundaki farklı değerlerin sayısını saymak için sapply() ve n_distinct() işlevlerinin nasıl kullanılacağını gösterir:

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

   team points assists 
      2 5 6

Sonuçtan şunu görebiliriz:

  • ‘Takım’ sütununda 2 farklı değer var
  • “Puan” sütununda 5 farklı değer bulunmaktadır
  • “Yardımlar” sütununda 6 farklı değer bulunmaktadır

Yöntem 3: Farklı değerleri gruba göre sayın

Aşağıdaki kod, grup başına farklı değerlerin sayısını saymak için n_distinct() işlevinin nasıl kullanılacağını gösterir:

 #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

Sonuçtan şunu görebiliriz:

  • A takımı için 3 farklı puan değeri bulunmaktadır.
  • B Takımı için 2 ayrı puan değeri bulunmaktadır.

Ek kaynaklar

Aşağıdaki eğitimlerde dplyr kullanılarak diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

Dplyr kullanarak değerler nasıl yeniden kodlanır
Dplyr’de NA’yı Sıfır ile nasıl değiştirebilirim?
Dplyr kullanarak değişkenleri gruba göre sıralama
Dplyr kullanarak gruba göre ilk satır nasıl seçilir

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir