Come utilizzare la funzione floor in sas


È possibile utilizzare la funzione FLOOR in SAS per restituire il numero intero più grande inferiore o uguale a un valore numerico.

L’esempio seguente mostra come utilizzare nella pratica la funzione FLOOR .

Nota : l’opposto della funzione FLOOR in SAS è la funzione CEIL .

Esempio: come utilizzare la funzione FLOOR in SAS

Supponiamo di avere il seguente set di dati in SAS che contiene informazioni sugli articoli medi venduti dai vari dipendenti di un’azienda:

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick 12.87
Eric 8.01
Frank 10
George 11.5
Henry 11.99
Isaac 7.64
;
run ;

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

Possiamo utilizzare la funzione FLOOR per restituire il numero intero più grande inferiore o uguale a ciascun valore numerico nella colonna avg_sales :

 /*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
run ;

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

Tieni presente che la nuova colonna denominata floor_avg_sales contiene il numero intero più grande inferiore o uguale a ciascun valore numerico nella colonna avg_sales .

Per esempio:

  • Il valore 12.30 diventa 12 .
  • Il valore 14.50 diventa 14 .
  • Il valore 8.44 diventa 8 .
  • Il valore 12.87 diventa 12 .

E così via.

La differenza tra le funzioni FLOOR e INT

La funzione INT in SAS restituisce la parte numerica intera dei valori numerici.

Per valori positivi, le funzioni FLOOR e INT restituiranno esattamente gli stessi numeri.

Tuttavia, le funzioni FLOOR e INT restituiranno valori diversi per i numeri negativi.

Consideriamo come esempio il seguente set di dati:

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick -12.87
Eric -8.01

/*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
    int_avg_sales = int (avg_sales);
run ;

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

Funzioni SAS FLOOR vs INT

Per valori numerici positivi, le funzioni FLOOR e INT restituiscono gli stessi risultati.

Tuttavia, non restituiscono gli stessi risultati per valori numerici negativi.

La funzione FLOOR sostanzialmente arrotonda i numeri negativi al numero intero successivo mentre la funzione INT arrotonda i numeri negativi al numero intero successivo.

Risorse addizionali

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

Come arrotondare i numeri in SAS
Come rimuovere le virgole dalle stringhe in SAS
Come visualizzare i valori in formato percentuale in SAS

Aggiungi un commento

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