كيفية استخدام الدالة ntile() في dplyr (مع أمثلة)
يمكنك استخدام الدالة ntile() من الحزمة dplyr في R لتقسيم متجه الإدخال إلى n bins.
تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:
نتيل (س، ن)
ذهب:
- س : ناقل الإدخال
- n : عدد المقصورات
ملحوظة : قد تختلف أحجام الجرافة بما يصل إلى مقاس واحد.
توضح الأمثلة التالية كيفية استخدام هذه الوظيفة عمليًا.
مثال 1: استخدم ntile() مع المتجه
يوضح الكود التالي كيفية استخدام الدالة ntile() لتقسيم متجه مكون من 11 عنصرًا إلى 5 مجموعات مختلفة:
library (dplyr) #createvector x <- c(1, 3, 4, 6, 7, 8, 10, 13, 19, 22, 23) #break up vector into 5 buckets ntile(x, 5) [1] 1 1 1 2 2 3 3 4 4 5 5
من النتيجة، يمكننا أن نرى أن كل عنصر من عناصر المتجه الأصلي تم وضعه في إحدى المجموعات الخمسة.
يتم تعيين أصغر القيم إلى الجرافة 1 بينما يتم تعيين القيم الأكبر إلى الجرافة 5.
على سبيل المثال:
- يتم تعيين أصغر القيم 1 و 3 و 4 إلى الجرافة 1 .
- تم تعيين القيمتين الأكبرين، 22 و 23، إلى المجموعة 5 .
مثال 2: استخدام ntile() مع إطار بيانات
لنفترض أن لدينا إطار البيانات التالي في R الذي يوضح النقاط التي سجلها لاعبو كرة السلة المختلفون:
#create data frame df <- data. frame (player=LETTERS[1:9], points=c(12, 19, 7, 22, 24, 28, 30, 19, 15)) #view data frame df player points 1 to 12 2 B 19 3 C 7 4 D 22 5 E 24 6 F 28 7 G 30 8:19 a.m. 9 I 15
يوضح التعليمة البرمجية التالية كيفية استخدام وظيفة ntile() لإنشاء عمود جديد في إطار البيانات الذي يعين كل لاعب إلى واحدة من ثلاث مجموعات، بناءً على النقاط المسجلة:
library (dplyr) #create new column that assigns players into buckets based on points df$bucket <- ntile(df$points, 3) #view updated data frame df player points bucket 1 to 12 1 2 B 19 2 3 C 7 1 4 D 22 2 5 E 24 3 6 F 28 3 7 G 30 3 8:19 2 9 I 15 1
يعين عمود الجرافة الجديد قيمة تتراوح بين 1 و3 لكل لاعب.
يحصل اللاعبون الحاصلون على أقل النقاط على قيمة 1 ويحصل اللاعبون الحاصلون على أعلى النقاط على قيمة 3 .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية استخدام الوظائف الشائعة الأخرى في R:
كيفية استخدام الدالة عبر () في dplyr
كيفية استخدام وظيفة relocate() في dplyr
كيفية استخدام وظيفة الشريحة () في dplyr