كيفية الحصول على رقم الأسبوع من التواريخ في r (مع أمثلة)
يمكنك استخدام الطرق التالية للحصول على رقم الأسبوع من تاريخ في R:
الطريقة الأولى: الحصول على رقم الأسبوع باستخدام Base R
strftime(df$date_column, format = ' %V ')
الطريقة الثانية: احصل على رقم الأسبوع باستخدام حزمة Lubridate
library (lubridate)
isoweek(ymd(df$ date_column ))
توضح الأمثلة التالية كيفية استخدام كل طريقة مع إطار البيانات التالي في R:
#create data frame df <- data. frame (date=as. Date (c('1/8/2022', '1/9/2022', '2/10/2022', '2/15/2022', '3/5/2022', '3/22/2022', '3/27/2022'), '%m/%d/%Y'), sales=c(8, 14, 22, 23, 16, 17, 23)) #view data frame df dirty date 1 2022-01-08 8 2 2022-01-09 14 3 2022-02-10 22 4 2022-02-15 23 5 2022-03-05 16 6 2022-03-22 17 7 2022-03-27 23
مثال 1: الحصول على رقم الأسبوع باستخدام Base R
يوضح التعليمة البرمجية التالية كيفية استخدام الدالة strftime() للحصول على رقم الأسبوع من عمود التاريخ في إطار البيانات:
#add column to show week number
df$week_num <- strftime(df$date, format = " %V ")
#view updated data frame
df
date sales week_num
1 2022-01-08 8 01
2 2022-01-09 14 01
3 2022-02-10 22 06
4 2022-02-15 23 07
5 2022-03-05 16 09
6 2022-03-22 17 12
7 2022-03-27 23 12
يعرض العمود الجديد المسمى week_num رقم الأسبوع للقيمة الموجودة في عمود التاريخ .
ملاحظة : وفقًا للوثائق، هذه هي الطريقة التي يحسب بها %V% أرقام التاريخ: “رقم الأسبوع من السنة (الاثنين باعتباره أول يوم في الأسبوع) كرقم عشري [01,53].” إذا كان الأسبوع الذي يحتوي على 1 يناير يحتوي على أربعة أيام أو أكثر في العام الجديد، فإنه يعتبر الأسبوع 1. وإلا فهو الأسبوع الأخير من العام السابق والأسبوع التالي هو الأسبوع 1.
مثال 2: احصل على رقم الأسبوع باستخدام حزمة Lubridate
يوضح التعليمة البرمجية التالية كيفية استخدام وظيفة isoweek() لحزمة lubridate للحصول على رقم الأسبوع من عمود التاريخ في إطار البيانات:
#add column to show week number
df$week_num <- isoweek(ymd(df$date))
#view updated data frame
df
date sales week_num
1 2022-01-08 8 1
2 2022-01-09 14 1
3 2022-02-10 22 6
4 2022-02-15 23 7
5 2022-03-05 16 9
6 2022-03-22 17 12
7 2022-03-27 23 12
يعرض العمود الجديد المسمى week_num رقم الأسبوع للقيمة الموجودة في عمود التاريخ .
لاحظ أن أرقام الأسابيع تتطابق مع تلك المحسوبة باستخدام الدالة strftime() في المثال السابق.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:
كيفية تجميع البيانات حسب الشهر فيR
كيفية استخراج السنة من التاريخ في R
كيفية استخراج الشهر من التاريخ في R
كيفية فرز إطار البيانات حسب التاريخ في R