Как добавить номера строк в sas (с примерами)


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

Способ 1. Добавьте номер строки.

 data my_data2;
    row_number = _N_;
    set my_data1;
run;

Способ 2. Добавьте номер строки для каждой группы.

 /*sort original dataset by var1*/
proc sort data =my_data1;
    by var1;
run ;

/*create new dataset that shows row number by var1*/
data my_data2;  
    set my_data1;
    by var1;
    if first.var1 then row_number= 0 ;
    row_number+ 1 ;
run ;

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

 /*create dataset*/
data my_data1;
    input team $points;
    datalines ;
Mavs 22
Mavs 40
Rockets 41
Rockets 29
Rockets 30
Spurs 18
Spurs 22
Spurs 27
Warriors 13
Warriors 19
;
run ;

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

Пример 1. Добавьте номер строки.

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

 /*create new dataset with column for row numbers*/
data my_data2;
    row_number = _N_;
    set my_data1;
run ;

Обратите внимание, что был добавлен новый столбец с именем row_number , который содержит номер строки каждого наблюдения в наборе данных.

Пример 2. Добавление номера строки для каждой группы

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

 /*sort original dataset by team*/
proc sort data =my_data1;
    by var1;
run ;

/*create new dataset that shows row number by team*/
data my_data2;  
    set my_data1;
    by var1;
    if first.var1 then row_number= 0 ;
    row_number+ 1 ;
run ; 

В результирующей таблице показан номер строки каждой команды.

Обратите внимание, что номера строк начинаются заново для каждой новой команды.

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

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

Как нормализовать данные в SAS
Как переименовать переменные в SAS
Как удалить дубликаты в SAS
Как заменить пропущенные значения нулями в SAS

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *