Как изменить порядок переменных в SAS (с примерами)


Вы можете использовать функцию RETAIN в SAS, чтобы быстро изменить порядок переменных в наборе данных.

Вот три наиболее распространенных способа использования этой функции:

Способ 1: изменить порядок всех переменных

data new_data;
 retain var4 var5 var1 var3 var2;
 set original_data;
run ;

Способ 2: переместить одну переменную на передний план

data new_data;
 retain var4;
 set original_data;
run ;

Способ 3: переместить несколько переменных на передний план

data new_data;
 retain var4 var5;
 set original_data;
run ;

В следующих примерах показано, как использовать каждый метод со следующим набором данных в SAS:

/\*create dataset\*/
data original_data;
 input team $ points rebounds assists steals;
 datalines ;
A 18 10 4 5
B 24 11 6 7
C 26 14 6 8
D 34 22 5 3
E 38 3 7 7
F 45 12 4 4
G 23 7 9 1
;
run ;

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

Пример 1: переупорядочить все переменные

В следующем коде показано, как переупорядочить переменные в следующем порядке: команда, подборы, перехваты передач, затем очки.

/\*create new dataset with variables reordered\*/
data new_data;
 retain team rebounds assists steals points;
 set original_data;
run ;

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

Обратите внимание, что переменные переупорядочены именно в том порядке, который мы указали в функции RETAIN .

Пример 2: Переместить одну переменную на передний план

В следующем коде показано, как переместить переменную Asses на передний план, оставив все остальные переменные в том же порядке:

/\*create new dataset with variables reordered\*/
data new_data;
 retain assists;
 set original_data;
run ;

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

Мы видим, что переменная Asses теперь находится на первой позиции, в то время как все остальные переменные остались в том же порядке.

Пример 3: Переместить несколько переменных на передний план

В следующем коде показано, как переместить переменные передач и подборов на передний план, оставив все остальные переменные в том же порядке:

/\*create new dataset with variables reordered\*/
data new_data;
 retain assists;
 set original_data;
run ;

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

Мы видим, что переменные передач и подборов теперь находятся на первой и второй позициях, в то время как все остальные переменные остались в том же порядке.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Как использовать сводку процедур в SAS
Как использовать Proc Tabulate в SAS
Как переименовать переменные в SAS
Как создать новые переменные в SAS