Sas'ta iki tarih arasındaki fark nasıl hesaplanır?


SAS’taki iki tarih arasındaki farkı hızlı bir şekilde hesaplamak için SAS’taki INTCK işlevini kullanabilirsiniz.

Bu işlev aşağıdaki temel sözdizimini kullanır:

INTCK (aralık, başlangıç tarihi, bitiş verileri, yöntem)

Altın:

  • aralık : Hesaplanacak aralık (gün, hafta, ay, yıl vb.)
  • başlangıç tarihi : Başlangıç tarihi
  • bitiş tarihi : Bitiş tarihi
  • yöntem : tam aralıkların sayılıp sayılmayacağı (‘D’ = Hayır (varsayılan), ‘C’ = Evet)

Aşağıdaki örnekte bu fonksiyonun pratikte nasıl kullanılacağı gösterilmektedir.

Örnek: SAS’taki tarihler arasındaki farkı hesaplama

Diyelim ki SAS’ta iki tarih değişkeni içeren aşağıdaki veri kümesine sahibiz:

 /*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 14AUG2022
;
run ;

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

Start_date ve end_date değişkenlerinin gün, hafta ve ay cinsinden değerleri arasındaki farkı hesaplamak için aşağıdaki kodu kullanabiliriz:

 /*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);
run ;

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

Üç yeni değişken, başlangıç_tarihi ve bitiş_tarihi arasındaki farkı gün, hafta ve ay cinsinden gösterir.

INTCK işlevindeki ‘ c ‘ bağımsız değişkenini yalnızca tam gün, hafta ve aylardaki farkı hesaplamak için kullanabileceğimizi unutmayın:

 /*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 ');
run ;

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

Bu tablo ile önceki tablo arasındaki farka dikkat edin.

Bu tabloda 1 Ocak ile 9 Ocak arasındaki hafta farkı, bu tarihler arasına yalnızca bir tam hafta sığabileceği için 1 olarak hesaplanıyor.

Ancak önceki tabloda bu iki tarih arasında iki kısmi hafta olduğu için hafta farkı 2 olarak hesaplandı.

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 veriler nasıl normalleştirilir?
SAS’ta bir dizedeki karakterler nasıl değiştirilir?
SAS’ta eksik değerler sıfırla nasıl değiştirilir?
SAS’ta kopyalar nasıl kaldırılır

Yorum ekle

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