해결 방법: xy.coords(x, y, xlabel, ylabel, log) 오류: 'x'와 'y' 길이가 다릅니다.


R에서 발생할 수 있는 일반적인 오류는 다음과 같습니다.

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

이 오류는 두 변수의 도표를 생성하려고 시도했지만 변수의 길이가 같지 않을 때 발생합니다.

이 튜토리얼에서는 이 오류를 수정하는 방법을 정확하게 설명합니다.

오류를 재현하는 방법

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

x와 y의 길이가 같지 않기 때문에 오류가 발생합니다.

각 변수의 길이를 인쇄하여 이를 확인할 수 있습니다.

 #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

오류를 수정하는 방법

이 오류를 해결하는 가장 쉬운 방법은 두 벡터의 길이가 동일한지 확인하는 것입니다.

 #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)

한 벡터가 다른 벡터보다 짧은 것으로 판명되면 더 짧은 벡터의 길이까지만 값을 플롯하도록 선택할 수 있습니다.

예를 들어, 벡터 xa에 4개의 값이 있고 벡터 y에 6개의 값이 있는 경우 각 벡터의 처음 4개 값만 사용하여 산점도를 만들 수 있습니다.

 #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)])

각 벡터의 처음 4개 값만 포인트 클라우드를 생성하는 데 사용됩니다.

추가 리소스

R에서 수정하는 방법: 강제로 인해 발생하는 NA
R에서 복구하는 방법: 범위를 벗어난 힌트
해결 방법: 긴 개체 길이는 짧은 개체 길이의 배수가 아닙니다.

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다