كيفية المقارنة بين متجهين في لغة r (مع أمثلة)


يمكنك استخدام بناء الجملة الأساسي التالي لمقارنة متجهين في R:

 #check if two vectors are identical
identical(vector_1, vector_2)

#display items that are in both vectors
intersect(vector_1, vector_2)

#display items that are only in first vector, but not in second vector
setdiff(vector_1, vector_2)

توضح الأمثلة التالية كيفية استخدام بناء الجملة هذا عمليًا.

مثال 1: تحقق مما إذا كان هناك متجهان متماثلان

يوضح التعليمة البرمجية التالية كيفية استخدام الدالةتطابق () للتحقق مما إذا كان هناك متجهان متطابقان:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#check if two vectors are identical
identical(vector_1, vector_2)

[1] FALSE

المتجهان غير متطابقين، لذلك يتم إرجاع القيمة FALSE .

مثال 2: ابحث عن العناصر الموجودة في كلا المتجهين

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة intersect() لعرض العناصر الموجودة في كلا المتجهين:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in both vectors
intersect(vector_1, vector_2)

[1] “Bob” “Carl” “Doug”

يتم عرض العناصر الثلاثة الموجودة في كلا المتجهين.

يمكننا أيضًا استخدام الدالة length() إذا أردنا ببساطة معرفة عدد العناصر الموجودة في المتجهين:

 #find how many items exist in both vectors
length(intersect(vector_1, vector_2))

[1] 3

توجد ثلاثة عناصر في كلا المتجهين.

مثال 3: ابحث عن العناصر الموجودة فقط في متجه واحد

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة setdiff() لعرض العناصر الموجودة في المتجه الأول، ولكن ليس في المتجه الثاني:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in first vector, but not in second vector
setdiff(vector_1, vector_2)

[1] “Andy”

يوجد عنصر واحد بالضبط في المتجه الأول غير موجود في المتجه الثاني.

يمكننا عكس المتجهين لتحديد العناصر الموجودة في المتجه الثاني، ولكن ليس في الأول:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in second vector, but not in first vector
setdiff(vector_2, vector_1)

[1] “Ethan” “Fred”

يوجد عنصران في المتجه الثاني غير موجودين في الأول.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:

كيفية مقارنة عمودين في R
كيفية مقارنة السلاسل في R
كيفية إضافة قيم إلى المتجه باستخدام حلقة في R

Add a Comment

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