كيفية إعادة ترتيب boxplots في لغة r (مع أمثلة)
في كثير من الأحيان قد ترغب في إعادة ترتيب boxplots في R.
توضح الأمثلة التالية كيفية القيام بذلك باستخدام طريقتين مختلفتين:
- الطريقة الأولى: إعادة الترتيب بناءً على ترتيب محدد
- الطريقة الثانية: إعادة الترتيب بناءً على القيمة المتوسطة لـ boxplot
سيستخدم كل مثال مجموعة بيانات جودة الهواء المضمنة في R:
#view first six lines of air quality data
head(airquality)
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
هذا هو الشكل الذي ستبدو عليه مخططات boxplot المتعددة لمجموعة البيانات هذه دون تحديد ترتيب:
#create boxplot that shows distribution of temperature by month
boxplot(Temp~Month, data=airquality, col=" lightblue ", border=" black ")
المثال 1: إعادة ترتيب قطع الأراضي بناءً على ترتيب محدد
يوضح التعليمة البرمجية التالية كيفية فرز boxplots بناءً على الترتيب التالي لمتغير الشهر : 5، 8، 6، 9، 7.
#reorder Month values
airquality$Month <- factor(airquality$Month , levels =c(5, 8, 6, 9, 7))
#create boxplot of temperatures by month using the order we specified
boxplot(Temp~Month, data=airquality, col=" lightblue ", border=" black ")
لاحظ أن boxplots تظهر الآن بالترتيب الذي حددناه باستخدام وسيطة المستويات .
ذات صلة: كيفية إعادة ترتيب مستويات العوامل في R
المثال 2: إعادة ترتيب مخططات الصندوق بناءً على القيمة المتوسطة
يوضح الكود التالي كيفية ترتيب boxplots بترتيب تصاعدي بناءً على قيمة درجة الحرارة المتوسطة لكل شهر:
#reorder Month values in ascending order based on median value of Temp
airquality$Month <- with(airquality, reorder(Month, Temp, median, na. rm = T ))
#create boxplot of temperatures by month
boxplot(Temp~Month, data=airquality, col=" lightblue ", border=" black ")
تظهر Boxplots الآن بترتيب تصاعدي بناءً على القيمة المتوسطة لكل شهر.
ملاحظة : القيمة المتوسطة لكل boxplot هي الخط الأسود الأفقي الذي يمر عبر منتصف كل مربع.
يمكننا أيضًا ترتيب boxplots بترتيب تنازلي باستخدام علامة سلبية أمام Temp في وظيفة إعادة الترتيب :
#reorder Month values in descending order based on median value of Temp
airquality$Month <- with(airquality, reorder(Month, -Temp, median, na. rm = T ))
#create boxplot of temperatures by month
boxplot(Temp~Month, data=airquality, col=" lightblue ", border=" black ")
تظهر Boxplots الآن بترتيب تنازلي بناءً على القيمة المتوسطة لكل شهر.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في R:
كيفية رسم boxplots متعددة في R
كيفية إنشاء مخططات مربعة أفقية في R
كيفية إزالة القيم المتطرفة في boxplots في R