كيفية استخراج السنة من التاريخ في r (مع أمثلة)


هناك طريقتان لاستخراج السنة بسرعة من تاريخ في R:

الطريقة الأولى: استخدام التنسيق ()

 df$year <- format( as.Date (df$date, format=" %d/%m/%Y ")," %Y ")

الطريقة الثانية: استخدم حزمة التشحيم

 library (lubridate)

df$year <- year( mdy (df$date))

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

الطريقة الأولى: استخراج السنة من التاريخ باستخدام التنسيق ()

يوضح التعليمة البرمجية التالية كيفية استخراج السنة من تاريخ باستخدام الدالة format() مع الوسيطة “%Y” :

 #create data frame
df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty dates
1 01/01/2021 34
2 01/04/2021 36
3 01/09/2021 44

#create new variable that contains year
df$year <- format( as.Date (df$date, format=" %d/%m/%Y ")," %Y ")

#view new data frame
df

        date sales year
1 01/01/2021 34 2021
2 01/04/2021 36 2021
3 01/09/2021 44 2021

لاحظ أن وظيفة format() هذه تعمل مع مجموعة متنوعة من تنسيقات التاريخ. تحتاج ببساطة إلى تحديد التنسيق:

 #create data frame
df <- data.frame(date=c("2021-01-01", "2021-01-04", "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty date
1 2021-01-01 34
2 2021-01-04 36
3 2021-01-09 44

#create new variable that contains year
df$year <- format( as.Date (df$date, format=" %Y-%m-%d ")," %Y ")

#view new data frame
df

        date sales year
1 01/01/2021 34 2021
2 01/04/2021 36 2021
3 01/09/2021 44 2021

الطريقة الثانية: استخراج السنة من التاريخ باستخدام Lubridate

يمكننا أيضًا استخدام الوظائف الموجودة في حزمة lubridate لاستخراج السنة بسرعة من التاريخ:

 library (lubridate)

#create data frame
df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty dates
1 01/01/2021 34
2 01/04/2021 36
3 01/09/2021 44

#create new variable that contains year
df$year <- year( mdy (df$date))

#view new data frame
df

        date sales year
1 01/01/2021 34 2021
2 01/04/2021 36 2021
3 01/09/2021 44 2021

يعمل Lubridate أيضًا مع مجموعة متنوعة من تنسيقات التاريخ. تحتاج ببساطة إلى تحديد التنسيق:

 #create data frame
df <- data.frame(date=c("2021-01-01", "2021-01-04", "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty dates
1 2021-01-01 34
2 2021-01-04 36
3 2021-01-09 44

#create new variable that contains year
df$year <- year( ymd (df$date))

#view new data frame
df

        date sales year
1 01/01/2021 34 2021
2 01/04/2021 36 2021
3 01/09/2021 44 2021

مصادر إضافية

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

كيفية التكرار على أسماء الأعمدة في R
كيفية إزالة القيم المتطرفة من أعمدة متعددة في R

Add a Comment

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