Come utilizzare la funzione substr in sas (con esempi)
È possibile utilizzare la funzione SUBSTR in SAS per estrarre parte di una stringa.
Questa funzione utilizza la seguente sintassi di base:
SUBSTR(Origine, Posizione, N)
Oro:
- Sorgente : il canale da analizzare
- Posizione : la posizione iniziale da leggere
- N : Il numero di caratteri da leggere
Ecco i quattro modi più comuni per utilizzare questa funzionalità:
Metodo 1: estrai i primi N caratteri dalla stringa
data new_data;
set original_data;
first_four = substr (string_variable, 1 , 4 );
run ;
Metodo 2: estrae i caratteri in un intervallo di posizioni specifico da una stringa
data new_data;
set original_data;
two_through_five = substr (string_variable, 2 , 4 );
run ;
Metodo 3: estrai gli ultimi N caratteri dalla stringa
data new_data;
set original_data;
last_three = substr (string_variable, length (string_variable)- 2 , 3 );
run ;
Metodo 4: crea una nuova variabile se nella stringa sono presenti caratteri
data new_data;
set original_data;
if substr (string_variable, 1 , 4 ) = ' some_string ' then new_var = ' Yes ';
else new_var = ' No ';
run ;
Gli esempi seguenti mostrano come utilizzare ciascun metodo con il seguente set di dati in SAS:
/*create dataset*/
data original_data;
input team $1-10;
datalines ;
Warriors
Wizards
Rockets
Celtics
Thunder
;
run ;
/*view dataset*/
proc print data = original_data;
Esempio 1: estrarre i primi N caratteri da una stringa
Il codice seguente mostra come estrarre i primi 4 caratteri dalla variabile team :
/*create new dataset*/
data new_data;
set original_data;
first_four = substr (team, 1 , 4 );
run ;
/*view new dataset*/
proc print data = new_data;
Tieni presente che la variabile first_four contiene i primi quattro caratteri della variabile team .
Esempio 2: estrarre i caratteri in un intervallo di posizioni specifico da una stringa
Il codice seguente mostra come estrarre i caratteri dalle posizioni da 2 a 5 della variabile team :
/*create new dataset*/
data new_data;
set original_data;
two_through_five = substr (team, 2 , 4 );
run ;
/*view new dataset*/
proc print data = new_data;
Esempio 3: estrarre gli ultimi N caratteri da una stringa
Il codice seguente mostra come estrarre gli ultimi 3 caratteri dalla variabile team :
/*create new dataset*/
data new_data;
set original_data;
last_three = substr (team , length (team) -2,3 );
run ;
/*view new dataset*/
proc print data = new_data;
Esempio 4: crea una nuova variabile se nella stringa sono presenti caratteri
Il codice seguente mostra come creare una nuova variabile denominata W_Team che restituisce ” yes ” se il primo carattere del nome del team è “W” o ” no ” se i primi caratteri non sono “W”.
/*create new dataset*/
data new_data;
set original_data;
if substr (team, 1 , 1 ) = ' W ' then W_Team = ' Yes ';
else W_Team = ' No ';
run ;
/*view new dataset*/
proc print data = new_data;
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in SAS:
Come normalizzare i dati in SAS
Come sostituire i caratteri in una stringa in SAS
Come sostituire i valori mancanti con zero in SAS
Come rimuovere i duplicati in SAS