Jak dodać numery linii w sas-ie (z przykładami)


Możesz użyć następujących metod, aby dodać numery wierszy do zbioru danych w SAS-owym stylu:

Metoda 1: Dodaj numer linii

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

Metoda 2: Dodaj numer linii dla każdej grupy

 /*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 ;

Poniższe przykłady pokazują, jak używać każdej metody z następującym zbiorem danych w SAS-owym:

 /*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; 

Przykład 1: Dodaj numer linii

Poniższy kod pokazuje, jak dodać nową kolumnę o nazwie numer_wiersza , która zawiera numer wiersza każdej obserwacji:

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

Należy zauważyć, że dodano nową kolumnę o nazwie numer_wiersza , która zawiera numer wiersza każdej obserwacji w zbiorze danych.

Przykład 2: Dodaj numer linii na grupę

Poniższy kod pokazuje, jak dodać numer wiersza na grupę:

 /*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 ; 

Wynikowa tabela pokazuje numer wiersza każdego zespołu.

Należy pamiętać, że numery linii zaczynają się od nowa dla każdego nowego zespołu.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak normalizować dane w SAS-ie
Jak zmienić nazwy zmiennych w SAS-ie
Jak usunąć duplikaty w SAS-ie
Jak zastąpić brakujące wartości zerem w SAS-ie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *