Nasıl düzeltilir: sonuçtaki satır sayısı vektör uzunluğunun katı değil (arg 1)


R kullanırken karşılaşabileceğiniz bir uyarı mesajı şöyledir:

 Warning message:
In cbind(A, B, C):
  number of rows of result is not a multiple of vector length (arg 1)

Bu uyarı genellikle farklı uzunluklardaki vektörlerin sütunlarını birbirine bağlamak için cbind() işlevini kullanmaya çalıştığınızda ortaya çıkar.

Bu mesajın sadece bir uyarı olduğunu ve kodunuzun çalışmaya devam edeceğini ancak alacağınız sonuçların beklediğinizden farklı olabileceğini unutmamalısınız.

Aşağıdaki örnekte bu uyarının pratikte nasıl önlenebileceği gösterilmektedir.

Uyarı nasıl yeniden oluşturulur?

Üç vektörü bir veri çerçevesindeki sütunlara bağlamak için cbind() işlevini kullandığımızı varsayalım:

 #define three vectors with different lengths
A = c(4, 2, 3, 6)
B = c(9, 1, 8, 7, 0, 7)
C = c(3, 5, 3, 3, 6, 4)

#column bind three vectors into data frame
df <- cbind(A, B, C)

#view data frame
df

Warning message:
In cbind(A, B, C):
  number of rows of result is not a multiple of vector length (arg 1)
     ABC
[1,] 4 9 3
[2,] 2 1 5
[3,] 3 8 3
[4,] 6 7 3
[5,] 4 0 6
[6,] 2 7 4

Cbind işlevi her üç vektörle de çalışır, ancak ilk vektörün değerlerinin defalarca tekrarlandığını unutmayın.

Buna R’de “geri dönüşüm” denir.

Uyarı nasıl önlenir

Bu uyarıyı tamamen önlemek için kullandığımız vektörlerin her birinin uzunluğunun aynı olduğundan emin olmamız gerekiyor.

Bunu başarmanın bir yolu, en kısa vektördeki eksik değerleri aşağıdaki gibi NA değerleriyle doldurmaktır:

 #calculate max length of vectors
max_length <- max(length(A), length(B), length(C))

#set length of each vector equal to max length
length(A) <- max_length                      
length(B) <- max_length
length(C) <- max_length 

#cbind the three vectors together into a data frame
df <- cbind(A, B, C)

#view data frame
df

      ABC
[1,] 4 9 3
[2,] 2 1 5
[3,] 3 8 3
[4,] 6 7 3
[5,] NA 0 6
[6,] NA 7 4

Bu sefer herhangi bir uyarı mesajı almadığımızı ve kullandığımız üç vektörün her birinin eşit uzunluğa sahip olmasını sağlamak için kısa vektör değerlerinin basitçe NA değerleriyle doldurulduğunu 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:

R’de nasıl düzeltilir: bağımsız değişkenler farklı sayıda satır içerir
R’de nasıl düzeltilir: kullanılmayan bağımsız değişkenlerin seçiminde hata
R’de nasıl onarılır: değiştirmenin uzunluğu sıfırdır

Yorum ekle

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