كيفية الإصلاح في r: خطأ في as.date.numeric(x): يجب توفير "الأصل".


الخطأ الذي قد تواجهه في R هو:

 Error in as.Date.numeric(x) : 'origin' must be supplied 

يحدث هذا الخطأ عادةً عند محاولة تحويل رقم إلى تاريخ في R، لكن يتعذر عليك توفير تاريخ أصلي.

يشرح هذا البرنامج التعليمي بالضبط كيفية إصلاح هذا الخطأ.

كيفية إعادة إنتاج الخطأ

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

 #create data frame
df <- data. frame (date=c(27, 140, 180, 200),
                 sales=c(12, 22, 30, 31))

#view data frame
df

  dirty dates
1 27 12
2 140 22
3 180 30
4,200 31

يمكننا استخدام الدالة str() لعرض بنية إطار البيانات:

 #view structure of data frame
str(df)

'data.frame': 4 obs. of 2 variables:
 $ date: num 27 140 180 200
 $ sales: num 12 22 30 31

يمكننا أن نرى أن أعمدة التاريخ والمبيعات رقمية.

لنفترض الآن أننا نحاول تحويل عمود التاريخ إلى تنسيق تاريخ:

 #attempt to convert date column to date format
df$date <- as. Date (df$date)

Error in as.Date.numeric(df$date) : 'origin' must be supplied

لقد تلقينا خطأً لأننا لم نستخدم الوسيطة الأصلية في الدالة as.Date() .

كيفية اصلاح الخطأ

طريقة إصلاح هذا الخطأ هي ببساطة توفير التاريخ الأصلي حتى يعرف R كيفية تحويل الأرقام إلى تواريخ:

 #convert date column to date format, using 2020-01-01 as origin date
df$date <- as. Date (df$date, origin=" 2020-01-01 ")

#view updated data frame
df

        dirty dates
1 2020-01-28 12
2 2020-05-20 22
3 2020-06-29 30
4 2020-07-19 31

من خلال توفير تاريخ الأصل، قام R بتحويل الأرقام إلى تواريخ عن طريق إضافة عدد الأيام إلى الأصل المقدم.

على سبيل المثال:

  • تم تحويل قيمة التاريخ الأول 27 إلى 28-01-2020 بإضافة 27 يومًا إلى التاريخ الأصلي 01-01-2020.
  • تم تحويل قيمة التاريخ الثاني 140 إلى 20/05/2020 بإضافة 140 يومًا إلى التاريخ الأصلي 01/01/2020.

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

يمكننا أيضًا استخدام الدالة class() للتأكد من أن العمود الجديد هو بالفعل تاريخ:

 #display class of date column
class(df$date)

[1] “Date”

أصبح العمود الجديد الآن تاريخًا بدلاً من رقم.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية حل الأخطاء الشائعة الأخرى في R:

كيفية الإصلاح في R: الأسماء لا تتطابق مع الأسماء السابقة
كيفية الإصلاح في R: طول الكائن الأطول ليس مضاعفًا لطول الكائن الأقصر
كيفية الإصلاح في R: لا يمكن تطبيق التباينات إلا على العوامل ذات المستويين أو أكثر

Add a Comment

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