كيفية استخدام وظيفة createdatapartition() في r


يمكنك استخدام وظيفة createDataPartition() لحزمة علامة الإقحام في R لتقسيم إطار البيانات إلى مجموعات تدريب واختبار لبناء النموذج.

تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:

createDataPartition(y، times = 1، p = 0.5، list = TRUE، …)

ذهب:

  • y : متجه النتائج
  • مرات : عدد الأقسام المراد إنشاؤها
  • p : النسبة المئوية للبيانات المستخدمة في مجموعة التدريب
  • القائمة : ما إذا كان سيتم تخزين النتائج في القائمة أم لا

يوضح المثال التالي كيفية استخدام هذه الوظيفة عمليًا.

مثال: استخدام createDataPartition() في R

لنفترض أن لدينا إطار بيانات بلغة R يحتوي على 1000 صف يحتوي على معلومات حول الساعات التي درسها الطلاب والدرجات المقابلة لهم في الاختبار النهائي:

 #make this example reproducible
set. seeds (0)

#create data frame
df <- data. frame (hours=runif(1000, min=0, max=10),
                 score=runif(1000, min=40, max=100))

#view head of data frame
head(df)

     hours score
1 8.966972 55.93220
2 2.655087 71.84853
3 3.721239 81.09165
4 5.728534 62.99700
5 9.082078 97.29928
6 2.016819 47.10139

لنفترض أننا نريد ملاءمة نموذج الانحدار الخطي البسيط الذي يستخدم ساعات الدراسة للتنبؤ بدرجة الاختبار النهائي.

لنفترض أننا نريد تدريب النموذج على 80% من الصفوف في إطار البيانات واختباره على 20% المتبقية من الصفوف.

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

 library (caret)

#partition data frame into training and testing sets
train_indices <- createDataPartition(df$score, times= 1 , p= .8 , list= FALSE )

#create training set
df_train <- df[train_indices, ]

#create testing set
df_test <- df[-train_indices, ]

#view number of rows in each set
nrow(df_train)

[1] 800

nrow(df_test)

[1] 200

يمكننا أن نرى أن مجموعة بيانات التدريب لدينا تحتوي على 800 صف، وهو ما يمثل 80% من مجموعة البيانات الأصلية.

وبالمثل، يمكننا أن نرى أن مجموعة بيانات الاختبار لدينا تحتوي على 200 صف، وهو ما يمثل 20% من مجموعة البيانات الأصلية.

يمكننا أيضًا تصور الأسطر الأولى من كل مجموعة:

 #view head of training set
head(df_train)

     hours score
1 8.966972 55.93220
2 2.655087 71.84853
3 3.721239 81.09165
4 5.728534 62.99700
5 9.082078 97.29928
7 8.983897 42.34600

#view head of testing set
head(df_test)

      hours score
6 2.016819 47.10139
12 2.059746 96.67170
18 7.176185 92.61150
23 2.121425 89.17611
24 6.516738 50.47970
25 1.255551 90.58483

يمكننا بعد ذلك البدء في تدريب نموذج الانحدار باستخدام مجموعة التدريب وتقييم أدائه باستخدام مجموعة الاختبار.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية استخدام الوظائف الشائعة الأخرى في R:

كيفية إجراء التحقق من صحة K-Fold في R
كيفية إجراء الانحدار الخطي المتعدد في R
كيفية إجراء الانحدار اللوجستي في R

Add a Comment

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