Sas: come rimuovere le virgole da una stringa


Il modo più semplice per rimuovere le virgole da una stringa in SAS è utilizzare la funzione TRANSLATE , che converte ogni occorrenza di un carattere in un altro carattere.

Per fare ciò, è possibile utilizzare la seguente sintassi di base:

 data new_data;
    set original_data;
    string_var = compress ( translate (string_var,"",','));
run ;

Questo particolare esempio rimuove ogni virgola da ogni stringa dalla variabile string_var in un set di dati.

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

Esempio: rimuovere le virgole da una stringa in SAS

Supponiamo di avere il seguente set di dati in SAS che contiene informazioni su varie squadre di basket:

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
,Mavs, 113
Pacers 95
,Ca,vs 120
Lakers 114
Heat 123
King,s 119
Raptors 105
,Hawks 95
Ma,gic 103
Spu,,rs 119
;
run ;

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

Tieni presente che diverse stringhe nella colonna del team contengono virgole in punti diversi.

Possiamo utilizzare la seguente sintassi per rimuovere tutte le virgole dalle stringhe nella colonna del team :

 /*create new dataset where commas are removed from each string in team column*/
data new_data;
    set my_data;
    team = compress ( translate (team,"",','));
run ;

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

Tieni presente che le virgole sono state rimosse da ogni stringa nella colonna della squadra .

Ecco cosa ha effettivamente fatto questo codice:

  • La funzione TRANSLATE ha sostituito ciascuna virgola con uno spazio vuoto.
  • Quindi la funzione COMPRESS ha rimosso lo spazio bianco da ciascuna stringa.

Nota : è possibile trovare la documentazione completa per la funzione SAS TRANSLATE qui .

Risorse addizionali

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

Come estrarre numeri da una stringa in SAS
Come utilizzare la funzione SUBSTR in SAS
Come rimuovere caratteri speciali dalle stringhe in SAS

Aggiungi un commento

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