Come estrarre numeri da una stringa in sas


Il modo più semplice per estrarre numeri da una stringa in SAS è utilizzare la funzione COMPRESS con il modificatore “A”.

Questa funzione utilizza la seguente sintassi di base:

 data new_data;
    set original_data;
    numbers_only = compress(some_string, '', ' A ');
run ;

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: estrarre numeri da una stringa in SAS

Supponiamo di avere in SAS il seguente dataset che riporta i nomi dei vari corsi universitari:

 /*create dataset*/
data original_data;
    input course $12.;
    datalines ;
Stats101
Economics203
Business201
Botany411
Calculus101
English201
Chemistry402
Physics102
;
run ;

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

Possiamo utilizzare il seguente codice per estrarre solo i numeri dal nome di ciascun corso:

 /*extract numbers from course column*/
data new_data;
    set original_data;
    course_number_only = compress (course, '', ' A ');
run ;

/*view results*/
proc print data = new_data; 

Tieni presente che la nuova colonna denominata course_number_only contiene solo i numeri delle stringhe nella colonna del corso .

Se invece vuoi estrarre solo i caratteri da ogni stringa, puoi utilizzare la funzione COMPRESS con il modificatore ‘d’:

 /*extract characters from course column*/
data new_data;
    set original_data;
    course_characters_only = compress (course, '', ' d ');
run ;

/*view results*/
proc print data = new_data; 

Tieni presente che la nuova colonna denominata course_characters_only contiene solo i numeri delle stringhe nella colonna del corso .

Nota : è possibile trovare un elenco completo dei modificatori per la funzione COMPRESS in questa pagina della documentazione SAS .

Risorse addizionali

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

Come normalizzare i dati in SAS
Come identificare i valori anomali in SAS
Come creare tabelle di frequenza in SAS

Aggiungi un commento

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