كيفية تحويل datetime إلى تاريخ في sas


أسهل طريقة لتحويل التاريخ/الوقت إلى تاريخ في SAS هي استخدام الدالة DATEPART .

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

 date = put ( datepart (some_datetime), mmddyy10. );

الوسيطة mddyy10. يحدد أن التاريخ يجب أن يكون بالتنسيق 15/10/2022.

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

مثال: تحويل التاريخ والوقت إلى التاريخ في SAS

لنفترض أن لدينا مجموعة البيانات التالية في SAS والتي تحتوي على عمود بالتواريخ والأوقات:

 /*create dataset*/
data original_data;
    format some_datetime datetime23.;
    input some_datetime:datetime23.;
    datalines ;
14OCT2022:0:0:0
09NOV2022:0:0:0
14NOV2022:0:0:0
15NOV2022:0:0:0
22DEC2022:0:0:0
24DEC2022:0:0:0
04JAN2023:0:0:0
;
run ;

/*view dataset*/
proc print data = original_data; 

يوضح التعليمة البرمجية التالية كيفية استخدام وظيفة DATEPART لإنشاء مجموعة بيانات جديدة يتم فيها تنسيق القيم الموجودة في عمود التاريخ والوقت كتواريخ بتنسيقات مختلفة:

 /*create new dataset with datetime formatted as date*/
data new_data;
set original_data;
    date_mmddyyyy = put ( datepart (some_datetime), mmddyy10.);
    date_yyyymmdd = put ( datepart (some_datetime), yymmdd10.);
    date_date9 = put ( datepart (some_datetime), date9.);
    date_default = datepart (some_datetime);
run ;

/*view new dataset*/
proc print data = new_data; 

لاحظ أن الأعمدة الأربعة الجديدة تعرض التاريخ من عمود التاريخ والوقت الأصلي بتنسيقات مختلفة.

بشكل افتراضي، تقوم الدالة DATEPART بتحويل التاريخ/الوقت إلى عدد الأيام منذ 1 يناير 1960.

لذلك يعرض العمود الجديد المسمى date_default عدد الأيام منذ 1 يناير 1960 لكل تاريخ.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة SAS DATEPART هنا .

مصادر إضافية

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

كيفية إضافة أيام حتى الآن في SAS
كيفية تحويل متغير رقمي حتى الآن في SAS
كيفية حساب الفرق بين تاريخين في SAS

Add a Comment

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