Come utilizzare la funzione compress in sas (con esempi)
È possibile utilizzare la funzione COMPRESS in SAS per rimuovere caratteri specifici da una stringa.
Questa funzione utilizza la seguente sintassi di base:
COMPRESS(Stringa, caratteri da rimuovere)
Oro:
- String : la stringa da analizzare
- caratteri da rimuovere : uno o più caratteri specifici da rimuovere dalla stringa
Ecco i quattro modi più comuni per utilizzare questa funzionalità:
Metodo 1: rimuovere tutti gli spazi vuoti dalla stringa
data new_data;
set original_data;
compressed_string = compress (string_variable);
run ;
Metodo 2: rimuovere caratteri specifici dalla stringa
data new_data;
set original_data;
compressed_string = compress (string_variable, ' !?@# ');
run ;
Metodo 3: rimuovere tutti i caratteri alfabetici dalla stringa
data new_data;
set original_data;
compressed_string = compress (string_variable, '', ' a ');
run ;
Metodo 4: rimuovi tutti i valori numerici dalla stringa
data new_data;
set original_data;
compressed_string = compress (string_variable, '', ' d ');
run ;
Gli esempi seguenti mostrano come utilizzare ciascun metodo con il seguente set di dati in SAS:
/*create dataset*/
data original_data;
input name $25.;
datalines ;
Andy Lincoln4 Bernard!
Barren Michael55 Smith!
Chad Simpson7 Arnolds?
Derrick Parson2 Henry
Eric Miller2 Johansen!
Frank Giovanni5 Goode
;
run ;
/*view dataset*/
proc print data = original_data;
Esempio 1: rimuovi tutti gli spazi vuoti dalla stringa
Il codice seguente mostra come rimuovere tutti gli spazi vuoti da ciascuna stringa nella colonna del nome :
/*remove blank spaces from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name);
run ;
/*view results*/
proc print data =new_data;
Tieni presente che tutti gli spazi vuoti sono stati rimossi da ciascuna stringa nella nuova colonna denominata tablet_name .
Esempio 2: rimuovere caratteri specifici dalla stringa
Il codice seguente mostra come rimuovere tutti i punti interrogativi e esclamativi da ciascuna stringa nella colonna del nome :
/*remove question marks and exclamation points from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, ' ?! ');
run ;
/*view results*/
proc print data =new_data;
Tieni presente che tutti i punti interrogativi e esclamativi sono stati rimossi da ciascuna stringa nella nuova colonna denominata tablet_name .
Esempio 3: rimuovere tutti i caratteri alfabetici dalla stringa
Il codice seguente mostra come rimuovere tutti i caratteri alfabetici da ciascuna stringa nella colonna del nome :
/*remove all alphabetical characters from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, '', ' a ');
run ;
/*view results*/
proc print data = new_data;
Tieni presente che tutti i caratteri alfabetici sono stati rimossi da ciascuna stringa nella nuova colonna denominata tablet_name .
Esempio 4: rimuovere tutti i valori numerici dalla stringa
Il codice seguente mostra come rimuovere tutti i valori numerici da ciascuna stringa nella colonna del nome :
/*remove all numeric values from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, '', ' d ');
run ;
/*view results*/
proc print data =new_data;
Tieni presente che tutti i valori numerici sono stati rimossi da ciascuna stringa nella nuova colonna denominata tablet_name .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in SAS:
Come utilizzare la funzione SUBSTR in SAS
Come utilizzare la funzione TROVA in SAS
Come utilizzare la funzione COALESCE in SAS