Come rinominare le variabili in sas (con esempi)


È possibile utilizzare la funzione rename per rinominare una o più variabili in un dataset SAS.

Questa funzione utilizza la seguente sintassi di base:

 data new_data;
    set original_data ( rename =(old_name=new_name));
run ;

I seguenti esempi mostrano come utilizzare questa funzione nella pratica con il seguente set di dati:

 /*create dataset*/
data original_data;
    input xyz;
    datalines ;
1 4 76
2 3 49
2 3 85
4 5 88
2 2 90
;
run ;

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

Esempio 1: rinominare una variabile

Il codice seguente mostra come rinominare solo la variabile x nel set di dati:

 /*rename one variable*/
data new_data;
set original_data ( rename =(x=new_x));
run ;

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

Tieni presente che x è stato rinominato new_x , ma tutti gli altri nomi di variabili sono rimasti gli stessi.

Esempio 2: rinominare più variabili

Il codice seguente mostra come rinominare le variabili xey nel set di dati.

Tieni presente che non è necessario includere virgole tra i nuovi nomi di variabile.

 /*rename multiple variables*/
data new_data;
    set original_data ( rename =(x=new_x y=new_y));
run ;

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

Esempio 3: aggiungi un prefisso a tutte le variabili

Il codice seguente mostra come aggiungere il prefisso _NEW a tutte le variabili nel set di dati:

 /*define prefix to append to each variable*/
proc sql noprint ;
   select cats(name, '=', '_NEW', name)
          into :list
          separated by ' '
          from dictionary.columns
          where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;

/*add prefix to each variable in dataset*/
proc datasets library = work;
   modify original_data;
   rename &list;
quit ;

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

Esempio 4: aggiungere un suffisso a tutte le variabili

Il codice seguente mostra come aggiungere il suffisso _NEW a tutte le variabili nel set di dati:

 /*define suffix to append to each variable*/
proc sql noprint ;
   select cats(name, '=', name, '_NEW')
          into :list
          separated by ' '
          from dictionary.columns
          where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;

/*add suffix to each variable in dataset*/
proc datasets library = work;
   modify original_data;
   rename &list;
quit ;

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

Risorse addizionali

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

Come sostituire i valori mancanti con zero in SAS
Come rimuovere i duplicati in SAS
Come normalizzare i dati in SAS

Aggiungi un commento

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