Nasıl düzeltilir: fun'da hata(newx[, i], …): bağımsız değişken türü ' (karakter)


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

 Error in sum(x): invalid 'type' (character) of argument

Bu hata, bir karakter vektörü üzerinde matematiksel bir işlem (toplam, ortalama, sayı vb. almak gibi) gerçekleştirmeye çalıştığınızda ortaya çıkar.

Bu eğitimde bu hatanın pratikte nasıl çözüleceği açıklanmaktadır.

Hata nasıl yeniden oluşturulur?

R’de aşağıdaki veri çerçevesini oluşturduğumuzu varsayalım:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 points=c(10, 12, 15, 20, 26, 25),
                 rebounds=c(7, 8, 8, 14, 10, 12))

#view data frame
df

  team points rebounds
1 to 10 7
2 to 12 8
3 to 15 8
4 B 20 14
5 B 26 10
6 B 25 12

Şimdi “takım” sütununun toplamını hesaplamaya çalıştığımızı varsayalım:

 #attempt to calculate sum of values in 'team' column
sum(df$team)

Error in sum(df$team): invalid 'type' (character) of argument

“Takım” sütunu bir karakter sütunu olduğu için hata alıyoruz.

Bunu class() işlevini kullanarak doğrulayabiliriz:

 #view class of 'team' column
class(df$team)

[1] “character”

Hata nasıl düzeltilir?

Bu hatayı aşmanın yolu yalnızca sayısal vektörlerle matematiksel işlemleri kullanmaktır.

Örneğin ‘puan’ sütunundaki değerlerin toplamını hesaplamak için sum() fonksiyonunu kullanabiliriz:

 #calculate sum of values in 'points' column
sum(df$points)

[1] 108

Ayrıca takıma göre gruplandırılmış puan değerlerinin toplamını da hesaplayabiliriz:

 #calculate sum of points, grouped by team
aggregate(points ~ team, df, sum)

  team points
1 to 37
2 B 71

Takımlara göre gruplandırılmış sayı ve ribaund değerlerinin toplamını bile hesaplayabiliriz:

 #calculate sum of points and sum of rebounds, grouped by team
aggregate(.~team, df, sum)

  team points rebounds
1 A 37 23
2 B 71 36

Yalnızca sayısal değişkenlerin toplamını hesaplamaya çalıştığımız için bu işlemlerin hiçbirinde hata almadığımızı unutmayın.

Ek kaynaklar

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

“Koşulun uzunluğu > 1 ve yalnızca ilk öğe kullanılacak” sorununu düzeltme
Nasıl düzeltilir? İkili operatörün sayısal olmayan bağımsız değişkeni
Nasıl düzeltilir? dim(X) pozitif uzunluğa sahip olmalıdır
Nasıl düzeltilir? Kullanılmayan bağımsız değişkenlerin seçilmesinde hata

Yorum ekle

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