R'de düşeyara (excel'e benzer) nasıl yapılır


Excel’deki DÜŞEYARA işlevi, bir tablodaki değeri bir sütunda eşleştirerek bulmanızı sağlar.

Örneğin, aşağıdaki Excel elektronik tablosunda, bir oyuncunun takım adını, oyuncunun adıyla eşleştirmek ve oyuncunun takımını döndürmek için DÜŞEYARA’yı kullanarak arayabiliriz:

Bu işlevi temel R’yi veya dplyr paketini kullanarak çoğaltabiliriz:

Base R’yi kullanma:

 merge(df1, df2, by=" merge_column ")

Dplyr’ı kullanma:

 inner_join(df1, df2, by=" merge_column ")

Aşağıdaki örnekler, DÜŞEYARA işlevini Excel’den çoğaltmak için bu işlevlerin her birinin R’de nasıl kullanılacağını gösterir.

Base R kullanarak DÜŞEYARA

Aşağıdaki kod, merge() işlevini kullanarak R tabanında DÜŞEYARA benzeri bir işlevin nasıl gerçekleştirileceğini gösterir:

 #create first data frame
df1 <- data.frame(player= LETTERS [1:15],
                  team= rep (c(' Mavs ', ' Lakers ', ' Rockets '), each =5))

#create second data frame 
df2 <- data.frame(player= LETTERS [1:15],
                  points=c(14, 15, 15, 16, 8, 9, 16, 27, 30, 24, 14, 19, 8, 6, 5))

#merge the two data frames
merge(df1, df2, by=" player ")

   player team points
1 A Mavs 14
2 B Mavs 15
3C Mavs 15
4D Mavs 16
5 E Mavs 8
6 F Lakers 9
7G Lakers 16
8 a.m. Lakers 27
9 I Lakers 30
10 J Lakers 24
11K Rockets 14
12L Rockets 19
13 M Rockets 8
14 N Rockets 6
15 O Rockets 5

Bunun giriş örneğindeki DÜŞEYARA işleviyle aynı sonuçları döndürdüğünü unutmayın. Ayrıca by argümanını kullanarak birleştirilecek birden fazla sütunu belirtebileceğinizi unutmayın.

dplyr kullanarak DÜŞEYARA

 library (dplyr)

#create first data frame
df1 <- data.frame(player= LETTERS [1:15],
                  team= rep (c(' Mavs ', ' Lakers ', ' Rockets '), each =5))

#create second data frame 
df2 <- data.frame(player= LETTERS [1:15],
                  points=c(14, 15, 15, 16, 8, 9, 16, 27, 30, 24, 14, 19, 8, 6, 5))

#merge the two data frames using inner_join
inner_join(df1, df2, by=" player ")

   player team points
1 A Mavs 14
2 B Mavs 15
3C Mavs 15
4D Mavs 16
5 E Mavs 8
6 F Lakers 9
7G Lakers 16
8 a.m. Lakers 27
9 I Lakers 30
10 J Lakers 24
11K Rockets 14
12L Rockets 19
13 M Rockets 8
14 N Rockets 6
15 O Rockets 5

Bunun Excel’deki DÜŞEYARA işleviyle aynı sonuçları döndürdüğünü unutmayın. Ayrıca by argümanını kullanarak birleştirilecek birden fazla sütunu belirtebileceğinizi unutmayın.

Ayrıca eşleşmeyen eşleşmelerin görüntülenmesini istiyorsanız left_join işlevini kullanabilirsiniz.

Ek kaynaklar

R’de kümülatif toplamlar nasıl hesaplanır
R’deki veriler nasıl standartlaştırılır
R’de bir veri çerçevesine satırlar nasıl eklenir

Yorum ekle

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