Verwendung der intck-funktion in sas (mit beispielen)


Sie können die INTCK- Funktion in SAS verwenden, um schnell die Differenz zwischen zwei Datumsangaben in SAS zu berechnen.

Diese Funktion verwendet die folgende grundlegende Syntax:

INTCK (Intervall, Startdatum, Enddaten, Methode)

Gold:

  • Intervall : Zu berechnendes Intervall (Tag, Woche, Monat, Quartal, Jahr usw.)
  • Startdatum : Das Startdatum
  • Enddatum : Das Enddatum
  • Methode : Zählen Sie Intervalle mit einer diskreten oder kontinuierlichen Methode

Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.

Beispiel: Verwenden der INTCK-Funktion zur Berechnung der Differenz zwischen Datumsangaben in SAS

Nehmen wir an, wir haben den folgenden Datensatz in SAS, der zwei Datumsvariablen enthält:

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

Mit dem folgenden Code können wir die Differenz zwischen den Werten der Variablen start_date und end_date in Tagen, Wochen, Monaten, Quartalen und Jahren berechnen:

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

INTCK-Funktion in SAS

Die fünf neuen Variablen zeigen die Differenz zwischen start_date und end_date in Tagen, Wochen, Monaten, Quartalen und Jahren.

Beachten Sie, dass wir das Argument „ c “ in der Funktion INTCK verwenden können, um die Differenz nur in ganzen Tagen, Wochen, Monaten, Quartalen und Jahren zu berechnen:

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

Beachten Sie den Unterschied zwischen dieser Tabelle und der vorherigen Tabelle.

In dieser Tabelle wird die Wochendifferenz zwischen dem 1. und 9. Januar als 1 berechnet, da zwischen diesen Daten nur eine ganze Woche Platz findet.

In der vorherigen Tabelle wurde die Differenz in Wochen jedoch mit 2 berechnet, da zwischen diesen beiden Daten zwei Teilwochen lagen.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:

So konvertieren Sie DateTime in SAS in ein Datum
So fügen Sie aktuelle Tage in SAS hinzu
So ermitteln Sie den Wochentag aus dem Datum in SAS

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert