วิธีแปลง datetime เป็นวันที่ใน sas


วิธีที่ง่ายที่สุดในการแปลงวันที่/เวลาเป็นวันที่ใน SAS คือการใช้ฟังก์ชัน DATEPART

ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:

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

อาร์กิวเมนต์ mddyy10 ระบุว่าวันที่ควรอยู่ในรูปแบบ 10/15/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

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *