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

Aggiungi un commento

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