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


يمكن استخدام وظيفة الاستبدال () في R لاستبدال عناصر محددة من المتجه بقيم جديدة.

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

استبدال (x، القائمة، القيم)

ذهب:

  • س : اسم المتجه
  • القائمة : العناصر التي يجب استبدالها
  • القيم : قيم الاستبدال

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

مثال 1: استبدال قيمة في متجه

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

 #define vector of values
data <- c(3, 6, 8, 12, 14, 15, 16, 19, 22)

#define new vector with a different value in position 2
data_new <- replace(data, 2, 50)

#view new vector
data_new

[1] 3 50 8 12 14 15 16 19 22

لاحظ أن العنصر الموجود في الموضع 2 قد تغير، لكن جميع القيم الأخرى في المتجه الأصلي ظلت كما هي.

مثال 2: استبدال قيم متعددة في متجه

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

 #define vector of values
data <- c(2, 4, 6, 8, 10, 12, 14, 16)

#define new vector with different values in position 1, 2, and 8
data_new <- replace(data, c(1, 2, 8), c(50, 100, 200))

#view new vector
data_new

[1] 50 100 6 8 10 12 14 200

لاحظ أن العناصر الموجودة في المواضع 1 و2 و8 قد تغيرت جميعها.

مثال 3: استبدال القيم في إطار البيانات

يوضح التعليمة البرمجية التالية كيفية استبدال القيم في عمود معين من إطار البيانات الذي يستوفي شرطًا محددًا:

 #define data frame
df <- data. frame (x=c(1, 2, 4, 4, 5, 7),
                 y=c(6, 6, 8, 8, 10, 11))

#view data frame
df

  xy
1 1 6
2 2 6
3 4 8
4 4 8
5 5 10
6 7 11

#replace values in column 'x' greater than 4 with a new value of 50
df$x <- replace(df$x, df$x > 4, 50)

#view updated data frame
df

   xy
1 1 6
2 2 6
3 4 8
4 4 8
5 50 10
6 50 11

تم استبدال كل قيمة في العمود “x” أكبر من 4 بقيمة 50.

ظلت جميع القيم الأخرى في إطار البيانات كما هي.

مصادر إضافية

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

كيفية استخدام وظيفة tabulate() في R
كيفية استخدام الدالة Split() في R
كيفية استخدام الدالة match() في R
كيفية استخدام وظيفة النسخ المتماثل () في R

Add a Comment

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