كيفية الإصلاح: خطأ في 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 قيم، فيمكننا إنشاء مخطط تبعثر باستخدام القيم الأربع الأولى فقط من كل متجه:

 #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: تلميح خارج الحدود
كيفية الإصلاح: طول الكائن الأطول ليس مضاعفًا لطول الكائن الأقصر

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *