Jak naprawić: błąd w xy.coords(x, y, xlabel, ylabel, log): długości „x” i „y” są różne


Typowym błędem, jaki możesz napotkać w R jest:

 Error in xy.coords(x, y, xlabel, ylabel, log): 
  'x' and 'y' lengths differ 

Ten błąd występuje, gdy próbujesz utworzyć wykres dwóch zmiennych, ale zmienne nie są tej samej długości.

W tym samouczku dokładnie wyjaśniono, jak naprawić ten błąd.

Jak odtworzyć błąd

Załóżmy, że próbujemy utworzyć wykres rozrzutu następujących dwóch zmiennych w R:

 #define x and y variables
x <- c(2, 5, 5, 8)
y <- c(22, 28, 32, 35, 40, 41)

#attempt to create scatterplot of x vs. y
plot(x, y)

Error in xy.coords(x, y, xlabel, ylabel, log): 
  'x' and 'y' lengths differ

Otrzymujemy błąd, ponieważ długości x i y nie są równe.

Możemy to potwierdzić, drukując długość każdej zmiennej:

 #print length of x
length(x)

[1] 4

#print length of y
length(y)

[1] 6

#check if length of x and y are equal
length(x) == length(y)

[1] FALSE

Jak naprawić błąd

Najłatwiejszym sposobem naprawienia tego błędu jest po prostu upewnienie się, że oba wektory mają tę samą długość:

 #define x and y variables to have same length
x <- c(2, 5, 5, 8, 9, 12)
y <- c(22, 28, 32, 35, 40, 41)

#confirm that x and y are the same length
length(x) == length(y)

[1] TRUE

create scatterplot of x vs. y
plot(x, y)

Jeśli jeden wektor okaże się krótszy od drugiego, możesz zdecydować się na wykreślenie tylko wartości do długości krótszego wektora.

Na przykład, jeśli wektor xa ma 4 wartości, a wektor y ma 6 wartości, możemy utworzyć wykres rozrzutu, używając tylko pierwszych 4 wartości każdego wektora:

 #define x and y variables
x <- c(2, 5, 5, 8)
y <- c(22, 28, 32, 35, 40, 41)

#create scatterplot of first 4 pairwise values of x vs. y
plot(x, y[1: length (x)])

Należy pamiętać, że do utworzenia chmury punktów wykorzystywane są tylko pierwsze cztery wartości każdego wektora.

Dodatkowe zasoby

Jak naprawić w R: NA wprowadzone przez przymus
Jak naprawić w R: wskazówka poza zakresem
Jak naprawić: Dłuższa długość obiektu nie jest wielokrotnością krótszej długości obiektu

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *