R'de veri temizleme nasıl yapılır (örnekle)


Veri temizleme, ham verilerin analize veya model oluşturmaya uygun verilere dönüştürülmesi sürecini ifade eder.

Çoğu durumda, bir veri kümesini “temizlemek”, eksik değerlerle ve yinelenen verilerle uğraşmayı içerir.

R’de bir veri kümesini “temizlemek” için en yaygın yöntemler şunlardır:

Yöntem 1: Eksik değerleri olan satırları kaldırın

 library (dplyr)

#remove rows with any missing values
df %>% na. omit ()

Yöntem 2: Eksik değerleri başka bir değerle değiştirin

 library (dplyr)
library (tidyr)

#replace missing values in each numeric column with median value of column
df %>% mutate(across(where(is. numeric ), ~replace_na(., median(., na. rm = TRUE ))))

Yöntem 3: Yinelenen Satırları Kaldırma

 library (dplyr)

df %>% distinct(. keep_all = TRUE )

Aşağıdaki örnekler, çeşitli basketbol oyuncuları hakkında bilgi içeren R’deki aşağıdaki veri çerçevesiyle bu yöntemlerin her birinin pratikte nasıl kullanılacağını göstermektedir:

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'),
                 points=c(4, 4, NA, 8, 6, 12, 14, 86, 13, 8),
                 rebounds=c(9, 9, 7, 6, 8, NA, 9, 14, 12, 11),
                 assists=c(2, 2, NA, 7, 6, 6, 9, 10, NA, 14))

#view data frame
df

   team points rebound assists
1 to 4 9 2
2 to 4 9 2
3 B NA 7 NA
4 C 8 6 7
5 D 6 8 6
6 E 12 NA 6
7 F 14 9 9
8 G 86 14 10
9:13:12 NA
10 I 8 11 14

Örnek 1: Eksik değerleri olan satırları silin

Herhangi bir sütunda eksik değerleri olan satırları kaldırmak için aşağıdaki sözdizimini kullanabiliriz:

 library (dplyr)

#remove rows with missing values
new_df <- df %>% na. omit ()

#view new data frame
new_df

   team points rebound assists
1 to 4 9 2
2 to 4 9 2
4 C 8 6 7
5 D 6 8 6
7 F 14 9 9
8 G 86 14 10
10 I 8 11 14

Yeni veri çerçevesinin eksik değerleri olan herhangi bir satır içermediğini unutmayın.

Örnek 2: Eksik değerleri başka bir değerle değiştirin

Eksik değerleri her sütunun medyan değeriyle değiştirmek için aşağıdaki sözdizimini kullanabiliriz:

 library (dplyr)
library (tidyr)

#replace missing values in each numeric column with median value of column
new_df <-df %>% mutate(across(where(is. numeric ),~replace_na(.,median(.,na. rm = TRUE )))) 

#view new data frame
new_df

   team points rebound assists
1 to 4 9 2.0
2 to 4 9 2.0
3 B 8 7 6.5
4 C 8 6 7.0
5 D 6 8 6.0
6 E 12 9 6.0
7 F 14 9 9.0
8 G 86 14 10.0
9:13 12 6.5
10 I 8 11 14.0

Her sayısal sütundaki eksik değerlerin her birinin, sütunun medyan değeriyle değiştirildiğini unutmayın.

Eksik değerleri her sütunun ortalama değeriyle değiştirmek için formüldeki medyanı ortalamayla da değiştirebileceğinizi unutmayın.

Not : Drop_na() işlevi o paketten geldiğinden bu örnekte Tidyr paketini de yüklememiz gerekti.

Örnek 3: Yinelenen satırları kaldırın

Eksik değerleri her sütunun medyan değeriyle değiştirmek için aşağıdaki sözdizimini kullanabiliriz:

 library (dplyr)

#remove duplicate rows
new_df <- df %>% distinct(. keep_all = TRUE )

#view new data frame
new_df

  team points rebound assists
1 to 4 9 2
2 B NA 7 NA
3 C 8 6 7
4 D 6 8 6
5 E 12 NA 6
6 F 14 9 9
7 G 86 14 10
8:13:12 NA
9 I 8 11 14

İkinci satırdaki değerlerin her biri, birinci satırdaki değerlerin kopyası olduğundan, ikinci satırın veri çerçevesinden kaldırıldığını unutmayın.

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

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

R’de veriler nasıl gruplanır ve özetlenir
R’de özet tablolar nasıl oluşturulur
R’de eksik değerleri olan satırlar nasıl silinir

Yorum ekle

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