วิธีแก้ไข: ข้อผิดพลาดใน 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 ค่า เราสามารถสร้าง Scatterplot โดยใช้เพียง 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)])

โปรดทราบว่ามีเพียงสี่ค่าแรกของเวกเตอร์แต่ละตัวเท่านั้นที่ใช้ในการสร้างพอยต์คลาวด์
แหล่งข้อมูลเพิ่มเติม
วิธีแก้ไขใน R: NAs ที่ถูกบังคับโดยการบังคับ
วิธีซ่อมแซมใน R: คำใบ้อยู่นอกขอบเขต
วิธีแก้ไข: ความยาวของวัตถุที่ยาวขึ้นไม่ใช่ผลคูณของความยาวของวัตถุที่สั้นกว่า