วิธีใช้ฟังก์ชัน intck ใน sas (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน INTCK ใน SAS เพื่อคำนวณความแตกต่างระหว่างวันที่สองวันใน SAS ได้อย่างรวดเร็ว
ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:
INTCK (ช่วงเวลา วันที่เริ่มต้น ข้อมูลสิ้นสุด วิธีการ)
ทอง:
- ช่วงเวลา : ช่วงเวลาในการคำนวณ (วัน สัปดาห์ เดือน ไตรมาส ปี ฯลฯ)
- start date : วันที่เริ่มต้น
- end date : วันที่สิ้นสุด
- method : นับช่วงเวลาโดยใช้วิธีแบบไม่ต่อเนื่องหรือต่อเนื่อง
ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ
ตัวอย่าง: การใช้ฟังก์ชัน INTCK เพื่อคำนวณความแตกต่างระหว่างวันที่ใน SAS
สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ที่มีตัวแปรวันที่สองตัว:
/*create dataset*/
data original_data;
format start_date end_date date9. ;
input start_date: date9. end_date: date9. ;
datalines ;
01JAN2022 09JAN2022
01FEB2022 22FEB2022
14MAR2022 04APR2022
01MAY2022 14AUG2023
06AUG2022 10NOV2024
;
run ;
/*view dataset*/
proc print data = original_data;
เราสามารถใช้โค้ดต่อไปนี้เพื่อคำนวณความแตกต่างระหว่างค่าของตัวแปร start_date และ end_date ในรูปแบบวัน สัปดาห์ เดือน ไตรมาส และปี:
/*create new dataset*/
data new_data;
set original_data;
days_diff = intck (' day ', start_date, end_date);
weeks_diff = intck (' weeks ', start_date, end_date);
months_diff = intck (' months ', start_date, end_date);
qtr_diff = intck (' qtr ', start_date, end_date);
years_diff = intck (' years ', start_date, end_date);
run ;
/*view new dataset*/
proc print data = new_data;
ตัวแปรใหม่ทั้งห้าแสดงความแตกต่างระหว่าง start_date และ end_date ในรูปแบบวัน สัปดาห์ เดือน ไตรมาส และปี
โปรดทราบว่าเราสามารถใช้อาร์กิวเมนต์ ‘ c ‘ ในฟังก์ชัน INTCK เพื่อคำนวณเฉพาะความแตกต่างในจำนวนเต็มวัน สัปดาห์ เดือน ไตรมาส และปี:
/*create new dataset*/
data new_data;
set original_data;
days_diff = intck (' day ', start_date, end_date, ' c ');
weeks_diff = intck (' weeks ', start_date, end_date, ' c ');
months_diff = intck (' months ', start_date, end_date, ' c ');
qtr_diff = intck (' qtr ', start_date, end_date, ' c ');
years_diff = intck (' years ', start_date, end_date, ' c ');
run ;
/*view new dataset*/
proc print data = new_data;
สังเกตความแตกต่างระหว่างตารางนี้กับตารางก่อนหน้า
ในตารางนี้ ส่วนต่างของสัปดาห์ระหว่างวันที่ 1 มกราคมถึง 9 มกราคมจะคำนวณเป็น 1 เนื่องจากระหว่างวันที่เหล่านี้จะมีเพียงหนึ่งสัปดาห์เต็มเท่านั้น
อย่างไรก็ตาม ในตารางก่อนหน้านี้ ส่วนต่างของสัปดาห์คำนวณไว้ที่ 2 เนื่องจากมีสัปดาห์ไม่เต็มสองสัปดาห์อยู่ระหว่างวันทั้งสองนี้
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:
วิธีแปลง DateTime เป็นวันที่ใน SAS
วิธีเพิ่มวันถึงวันที่ใน SAS
วิธีรับวันในสัปดาห์จากวันที่ใน SAS