Sas: come convertire una variabile di carattere in una data
È possibile utilizzare la funzione input() in SAS per convertire una variabile di carattere in un formato di variabile di data.
Questa funzione utilizza la seguente sintassi di base:
date_var = input (character_var, MMDDYY10. ); date_var format MMDDYY10. ;
L’esempio seguente mostra come utilizzare questa funzione nella pratica.
Esempio: convertire una variabile di carattere in una data in SAS
Supponiamo di avere il seguente set di dati in SAS che mostra le vendite totali effettuate da un negozio in sei giorni diversi:
/*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;
Possiamo vedere che il giorno è una variabile di carattere, ma deve essere rappresentato in un formato data.
Possiamo utilizzare il codice seguente per creare un nuovo set di dati in cui convertiamo la variabile del giorno da un formato di carattere a un formato di data:
/*create new dataset where 'day' is in date format*/
data new_data;
set original_data;
new_day = input (day, MMDDYY10. );
format new_day MMDDYY10. ;
drop day;
run ;
/*view new dataset*/
proc print data = new_data;
Nota : abbiamo utilizzato la funzione drop per rimuovere la variabile del giorno originale dal set di dati.
Possiamo vedere che la nuova variabile che abbiamo creato, new_day , è nel formato data.
Tieni presente che MMGGAA10. è solo uno dei possibili formati di data che avremmo potuto utilizzare. Puoi trovare un elenco completo dei formati di data SAS qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in SAS:
SAS: come convertire una variabile di carattere in numerica
SAS: come convertire una variabile numerica in carattere
SAS: come sostituire i valori mancanti con zero