R'de nasıl onarılır: ikili operatörün sayısal olmayan argümanı


R’de karşılaşabileceğiniz bir hata:

 Error in df$var1- df$var2: non-numeric argument to binary operator 

Bu hata, iki vektör üzerinde ikili bir işlem gerçekleştirmeye çalıştığınızda ve vektörlerden biri sayısal olmadığında ortaya çıkar.

İşte ikili işlem örnekleri:

  • Çıkarma ( )
  • Toplama ( + )
  • Çarpmalar ( * )
  • Bölme ( / )

Bu hata çoğunlukla sağladığınız vektörlerden biri bir karakter vektörü olduğunda ortaya çıkar.

Bu eğitimde bu hatanın nasıl düzeltileceği tam olarak açıklanmaktadır.

Hata nasıl yeniden oluşturulur?

R’de aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:

 #create data frame
df <- data. frame (period = c(1, 2, 3, 4, 5, 6, 7, 8),
                 sales = c(14, 13, 10, 11, 19, 9, 8, 7),
                 returns = c('1', '0', '2', '1', '1', '2', '2', '3'))

#view data frame
df

  period sales returns
1 1 14 1
2 2 13 0
3 3 10 2
4 4 11 1
5 5 19 1
6 6 9 2
7 7 8 2
8 8 7 3

Şimdi “satışlar” sütunundan “iadeler” sütununu çıkararak “net” adında yeni bir sütun oluşturmaya çalıştığımızı varsayalım:

 #attempt to create new column called 'net'
df$net <- df$sales - df$returns

Error in df$sales * df$returns: non-numeric argument to binary operator

“Döndürür” sütunu “karakter” sınıfından olduğundan ve bir sayısal sütundan bir karakter sütununu çıkarmak mümkün olmadığından bir hata oluşur.

 #display class of 'sales' column
class(df$sales)

[1] "digital"

#display class of 'returns' column
class(df$returns)

[1] “character”

Hata nasıl düzeltilir?

Bu hatayı düzeltmenin yolu, çıkarma işlemini gerçekleştirmeden önce “döndürür” sütununu sayısala dönüştürmek için as.numeric() işlevini kullanmaktır:

 #create new column called 'net'
df$net <- df$sales - as. numeric (df$returns)

#view updated data frame
df

  period sales returns net
1 1 14 1 13
2 2 13 0 13
3 3 10 2 8
4 4 11 1 10
5 5 19 1 18
6 6 9 2 7
7 7 8 2 6
8 8 7 3 4

“Satış” ve “iade” sütunları sayısal olduğu için çıkarma işlemini hatasız olarak gerçekleştirebiliyoruz.

Ek kaynaklar

Aşağıdaki eğitimlerde R’deki diğer yaygın hataların nasıl çözüleceği açıklanmaktadır:

R’de nasıl düzeltilir: dim(X) pozitif uzunluğa sahip olmalıdır
R’de nasıl düzeltilir: Adlar önceki adlarla eşleşmiyor
R’de nasıl düzeltilir: daha uzun bir nesnenin uzunluğu, daha kısa bir nesnenin uzunluğunun katı değildir
R’de nasıl düzeltilir: kontrastlar yalnızca 2 veya daha fazla seviyeye sahip faktörlere uygulanabilir

Yorum ekle

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