كيفية حساب قيم التحول في r (مع أمثلة)


يمكنك استخدام الدالة lag() من الحزمة dplyr في R لحساب قيم التأخر.

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

إزاحة (س، ن = 1، …)

ذهب:

  • x : ناقل القيم
  • n : عدد المواضع المطلوب تأخيرها

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

مثال: حساب القيم المتغيرة في R

لنفترض أن لدينا إطار البيانات التالي في R الذي يوضح عدد المبيعات التي قام بها المتجر على مدار 10 أيام متتالية:

 #create data frame
df <- data. frame (day=1:10,
                 sales=c(18, 10, 14, 13, 19, 24, 25, 29, 15, 18))

#view data frame
df

   day sales
1 1 18
2 2 10
3 3 14
4 4 13
5 5 19
6 6 24
7 7 25
8 8 29
9 9 15
10 10 18

يمكننا استخدام الدالة lag() من الحزمة dplyr لإنشاء عمود تأخر يعرض مبيعات اليوم السابق لكل صف:

 library (dplyr)

#add new column that shows sales for previous day
df$previous_day_sales <- dplyr::lag(df$sales, n= 1 )

#view updated data frame
df

   day sales previous_day_sales
1 1 18 NA
2 2 10 18
3 3 14 10
4 4 13 14
5 5 19 13
6 6 24 19
7 7 25 24
8 8 29 25
9 9 15 29
10 10 18 15

وإليك كيفية تفسير النتيجة:

  • القيمة الأولى في عمود الإزاحة هي NA نظرًا لعدم وجود قيمة سابقة في عمود المبيعات.
  • القيمة الثانية في عمود الإزاحة هي 18 لأنها القيمة السابقة في عمود المبيعات.
  • القيمة الثالثة في عمود الإزاحة هي 10 لأنها القيمة السابقة في عمود المبيعات.

وما إلى ذلك وهلم جرا.

يمكننا أيضًا تغيير قيمة الوسيطة n في الدالة lag() لحساب قيمة التأخر لعدد مختلف من المواضع السابقة:

 library (dplyr)

#add new column that shows sales for two days prior
df$previous_day_sales <- dplyr::lag(df$sales, n= 2 )

#view updated data frame
df

   day sales previous_day_sales
1 1 18 NA
2 2 10 NA
3 3 14 18
4 4 13 10
5 5 19 14
6 6 24 13
7 7 25 19
8 8 29 24
9 9 15 25
10 10 18 29

ملاحظة : لإنشاء عمود رئيسي، استخدم الدالة Lead() من الحزمة dplyr بدلاً من الدالة lag() .

مصادر إضافية

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

كيفية استخدام الدالة n() في dplyr
كيفية استخدام الدالة عبر () في dplyr
كيفية استخدام وظيفة relocate() في dplyr
كيفية استخدام وظيفة الشريحة () في dplyr

Add a Comment

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