Sas: hoe een numerieke variabele naar een datum te converteren
U kunt de volgende basissyntaxis gebruiken om een numerieke variabele naar een datumvariabele in SAS te converteren:
date_var = input ( put (numeric_var, 8 .), MMDDYY10. );
date_var format MMDDYY10. ;
Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.
Gerelateerd: Hoe een numerieke variabele naar karakter te converteren in SAS
Voorbeeld: Converteer een numerieke variabele naar een datum in SAS
Laten we zeggen dat we de volgende gegevensset in SAS hebben die de totale omzet van een winkel op verschillende dagen weergeeft:
/*create dataset*/ data original_data; input day sales; datalines ; 01012022 15 01022022 19 01052022 22 01142022 11 01152022 26 01212022 28 ; run ; /*view dataset*/ proc print data = original_data;
We kunnen de inhoud van de procedure gebruiken om het gegevenstype van elke variabele in de dataset weer te geven:
/*display data type for each variable*/
proc contents data =original_data;
We kunnen zien dat dag en omzet beide numerieke variabelen zijn.
We kunnen de volgende code gebruiken om een nieuwe dataset te maken waarin we de dagvariabele van numeriek naar datum converteren:
/*create new dataset where 'day' is date*/
data new_data;
set original_data;
date_day = input ( put (day, 8. ), MMDDYY10.) ;
date_day format MMDDYY10. ;
drop day;
run ;
/*view new dataset*/
proc print data = new_data;
Opmerking : we hebben de drop- functie gebruikt om de oorspronkelijke dagvariabele uit de dataset te verwijderen.
We kunnen zien dat de nieuwe variabele die we hebben gemaakt, date_day , de datumnotatie heeft.
Merk op dat MMDDJJ10. is slechts één mogelijk datumformaat dat we hadden kunnen gebruiken. Een volledige lijst met SAS-datumformaten vindt u hier .
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
SAS: Hoe een tekenvariabele naar een datum te converteren
SAS: Hoe een tekenvariabele naar numeriek te converteren
SAS: tekenreeksen converteren naar hoofdletters, kleine letters en juiste letters