Sas: proc sql'de tarih değerleri nasıl formatlanır?


Tarih değerlerini belirli bir şekilde biçimlendirmek için SAS’ta PROC SQL’de FORMAT deyimini kullanabilirsiniz.

Aşağıdaki örnek, FORMAT ifadesinin pratikte nasıl kullanılacağını gösterir.

Örnek: PROC SQL’de tarih değerlerini biçimlendirme

SAS’ta, bir perakende mağazadaki promosyonların başlangıç tarihi ve yapılan toplam satışlar hakkında bilgi içeren aşağıdaki veri kümesine sahip olduğumuzu varsayalım:

 /*create dataset*/
data my_data;
    format start_date date9. ;
    input start_date: date9. dirty;
    datalines ;
01JAN2023 22
01FEB2023 16
14MAR2023 11
01MAY2023 32
13MAY2023 15
18AUG2023 11
20OCT2023 36
;
run ;

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

Bu veri kümesindeki tüm satırları seçmek ve start_date sütunundaki değerleri MM/DD/YY formatında görüntülemek için PROC SQL’i FORMAT ifadesi ile kullanabiliriz:

 /*select all rows and format start_date column using mmddyy8.*/ 
proc sql ;
    select start_date format= mmddyy8. , dirty
    from my_data;
quit ; 

Başlangıç_tarihi sütunundaki değerlerin artık AA/GG/YY biçiminde görüntülendiğini unutmayın.

PROC SQL kullanılarak oluşturulan yeni değişkenleri biçimlendirmek için FORMAT deyimini de kullanabilirsiniz.

Örneğin, aşağıdaki kod, başlangıç_tarihi’ne 7 gün ekleyerek ve bunu tarih9 olarak biçimlendirerek bitiş_tarihi adlı yeni bir değişkenin nasıl oluşturulacağını gösterir . yerine:

 /*create new end_date column with specific format*/ 
proc sql ;
    select start_date format= mmddyy8. , start_date+7 as end_date format= date9. , dirty
    from my_data;
quit ; 

FORMAT ifadesini birkaç kez kullanarak başlangıç_tarihi ve bitiş_tarihi değişkenlerinin biçimini belirleyebildiğimizi unutmayın.

Ek kaynaklar

Aşağıdaki eğitimlerde SAS’ta diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

SAS: PROC SQL’de WHERE operatörü nasıl kullanılır?
SAS: PROC SQL’de IN operatörü nasıl kullanılır?
SAS: PROC SQL’de UPDATE nasıl kullanılır?
SAS: PROC SQL’de CONTAINS nasıl kullanılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir