Sas: come visualizzare i valori nel formato ora


Supponiamo che tu abbia una variabile in SAS chiamata durata che ha un valore temporale di 7:30:00 .

È possibile utilizzare le seguenti funzioni in SAS per formattare questo valore temporale in diversi modi:

  • PUT(durata, ora8.) – Formato ora con una lunghezza totale di 8.
    • Questo produrrà 7:30:00.
  • PUT (durata, hhmm.) – Formato ora con solo ore e minuti.
    • Questo produrrà 7:30.
  • PUT(durata, ore5.2) – Formato come ora con tempi decimali.
    • Questo produrrà 7,50.
  • hour(duration) – Formato solo in ore.
    • Questo produrrà 7
  • minuto (durata) – Formato solo in minuti.
    • Questo ne produrrà 30.
  • secondo (durata) – Formato solo in secondi.
    • Questo produrrà 0.

L’esempio seguente mostra come utilizzare nella pratica ciascuno di questi formati.

Esempio: visualizzare i valori nei formati orari in SAS

Supponiamo di avere il seguente set di dati in SAS che contiene informazioni sul tempo impiegato da diversi atleti per completare un’attività:

 /*create dataset*/
data my_data;
    input athlete $duration time8.;
    datalines ;
At 04:15:00
B 10:09:15
C 7:30:00
D 18:55:00
E 14:23:59
F 23:45:10
;
run ;

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

Per impostazione predefinita, SAS memorizza i valori temporali in secondi.

Ad esempio, nella prima riga abbiamo inserito 4 ore, 15 minuti e 0 secondi, che equivalgono a 15.300 secondi.

Nota : in un giorno ci sono 86.400 secondi.

Possiamo utilizzare la seguente sintassi per creare un nuovo set di dati in cui formattiamo i valori della colonna durata in diversi formati temporali:

 /*create new dataset with duration printed in various time formats*/
data new_data;
set my_data;
    duration_time8 = put (duration, time8. );
    duration_hhmm = put (duration, hhmm. );
    duration_hour52 = put (duration, hour5.2 );
    duration_hour = hour (duration);
    duration_minute = minute (duration);
    duration_second = second (duration);
run ;

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

Tieni presente che ciascuna delle nuove colonne formatta i valori temporali in modo diverso:

  • length_time8 visualizza ore, minuti e secondi.
  • length_hhmm visualizza solo ore e minuti.
  • durata_hhmm visualizza le ore decimali.
  • length_hour visualizza solo il valore dell’ora.
  • minute_duration visualizza solo il valore dei minuti.
  • length_second visualizza solo il valore dei secondi.

Sentiti libero di utilizzare il formato che preferisci a seconda di come desideri visualizzare i valori temporali nel tuo set di dati.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in SAS:

SAS: come visualizzare i valori in formato dollaro
SAS: come visualizzare i valori in formato percentuale
SAS: come formattare i valori della data in PROC SQL

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *