R'de pivot_wider() nasıl kullanılır


R’deki Tidyr paketinin pivot_wider() işlevi, bir veri bloğunu uzun formattan geniş formata döndürmek için kullanılabilir.

Bu işlev aşağıdaki temel sözdizimini kullanır:

 library (tidyr)

df %>% pivot_wider(names_from = var1, values_from = var2)

Altın:

  • name_from : Değerleri sütun adı olarak kullanılacak sütun
  • values_from : Değerleri hücre değeri olarak kullanılacak sütun

Aşağıdaki örnekte bu fonksiyonun pratikte nasıl kullanılacağı gösterilmektedir.

İlgili: Uzun veya Geniş Veri: Fark Nedir?

Örnek: R’de pivot_wider() işlevini kullanın

R’de çeşitli basketbol oyuncuları hakkında bilgi içeren aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:

 #create data frame
df <- data. frame (player=rep(c('A', 'B'), each= 4 ),
                 year=rep(c(1, 1, 2, 2), times= 2 ),
                 stat=rep(c('points', 'assists'), times= 4 ),
                 amount=c(14, 6, 18, 7, 22, 9, 38, 4))

#view data frame
df

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 2 points 18
4 A 2 assists 7
5 B 1 points 22
6 B 1 assists 9
7 B 2 points 38
8 B 2 assists 4

Bu veri çerçevesini geniş bir formata döndürmek için pivot_wider() fonksiyonunu kullanabiliriz:

 library (tidyr)

#pivot the data frame into a wide format
df %>% pivot_wider(names_from = stat, values_from = amount)

# A tibble: 4 x 4
  player year points assists
         
1 A 1 14 6
2 A 2 18 7
3 B 1 22 9
4 B 2 38 4

Bu yeni sütunlarda istatistik sütunundaki değerlerin artık sütun adı olarak, miktar sütunundaki değerlerin ise hücre değerleri olarak kullanıldığını unutmayın.

Sonuçta büyük bir veri bloğu ortaya çıkıyor.

Not : Pivot_wider() işlevine ilişkin tüm belgeleri burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde R’deki Tidyr paketindeki diğer ortak işlevlerin nasıl kullanılacağı açıklanmaktadır:

R’de Spread işlevi nasıl kullanılır?
R’de toplama işlevi nasıl kullanılır?
R’de ayrı bir işlev nasıl kullanılır?
R’de Unite işlevi nasıl kullanılır?

Yorum ekle

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