Datetime'ı sas'ta tarihe dönüştürme
SAS’ta tarih/saati tarihe dönüştürmenin en kolay yolu DATEPART işlevini kullanmaktır.
Bu işlev aşağıdaki temel sözdizimini kullanır:
date = put ( datepart (some_datetime), mmddyy10. );
mddyy10 argümanı. tarihin 10/15/2022 biçiminde olması gerektiğini belirtir.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: SAS’ta Tarih Saatini Tarihe Dönüştürme
Diyelim ki SAS’ta tarih ve saatlerden oluşan bir sütun içeren aşağıdaki veri kümesine sahibiz:
/*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;
Aşağıdaki kod, tarihsaat sütunundaki değerlerin farklı biçimlerdeki tarihler olarak biçimlendirildiği yeni bir veri kümesi oluşturmak için DATEPART işlevinin nasıl kullanılacağını gösterir:
/*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;
Dört yeni sütunun, orijinal tarihsaat sütunundaki tarihi farklı formatlarda görüntülediğini unutmayın.
Varsayılan olarak DATEPART işlevi, tarih/saati 1 Ocak 1960’tan bu yana geçen gün sayısına dönüştürür.
Yani date_default adı verilen yeni sütun, her tarihsaat için 1 Ocak 1960’tan bu yana geçen gün sayısını görüntüler.
Not : SAS DATEPART işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde SAS’ta diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
SAS’ta bugüne kadar günler nasıl eklenir?
SAS’ta sayısal bir değişken tarihe nasıl dönüştürülür?
SAS’ta iki tarih arasındaki fark nasıl hesaplanır?