Sas: jak używać opcji where z set


Możesz użyć opcji WHERE z SET w SAS-ie, aby utworzyć nowy zbiór danych zawierający tylko wiersze z innego zbioru danych, w przypadku których spełnione są określone warunki.

Oto dwa typowe sposoby wykorzystania tej opcji w praktyce:

Metoda 1: Użyj WHERE i SET z warunkiem

 data new_data;
    set my_data ( where = (dots>20));
run ;

W tym przykładzie tworzony jest nowy zestaw danych o nazwie new_data , który zawiera tylko wiersze w my_data , których wartość w kolumnie punktów jest większa niż 20.

Metoda 2: Użyj WHERE i SET z wieloma warunkami

 data new_data;
    set my_data ( where = (points>20 or team="Rockets"));
run ;

W tym przykładzie tworzony jest nowy zestaw danych o nazwie new_data , który zawiera tylko wiersze w my_data , w których wartość w kolumnie punktów jest większa niż 20 lub wartość w kolumnie zespołu jest równa Rockets.

Poniższe przykłady pokazują, jak zastosować każdą metodę w praktyce z następującym zbiorem danych w SAS-ie:

 /*create dataset*/
data my_data;
    input team $points assists;
    datalines ;
Mavs 22 10
Rockets 12 14
Spurs 29 8
Kings 13 10
Warriors 44 10
Heat 18 8
Magic 11 5
Pelicans 19 3
Blazers 12 8
;
run ;

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

Przykład 1: Użyj WHERE i SET z warunkiem

Możemy użyć następującej składni, aby utworzyć nowy zbiór danych o nazwie new_data , który będzie zawierał tylko te wiersze w my_data , w których wartość w kolumnie punktów jest większa niż 20:

 /*create new dataset*/
data new_data;
    set my_data ( where = (dots>20));
run ;

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

Należy pamiętać, że w tym zbiorze danych uwzględniane są tylko wiersze o wartości większej niż 20 w kolumnie punktów .

Przykład 2: Używanie WHERE i SET z wieloma warunkami

Możemy użyć poniższej składni, aby utworzyć nowy zbiór danych o nazwie new_data , który będzie zawierał tylko te wiersze w my_data , w których wartość w kolumnie punktów jest większa niż 20 lub wartość w kolumnie zespołu jest równa „Rockets”:

 /*create new dataset*/
data new_data;
    set my_data ( where = (points>20 or team="Rockets"));
run ;

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

Należy pamiętać, że w tym zestawie danych uwzględniane są tylko wiersze o wartości większej niż 20 w kolumnie punktów lub wartości „Rakiety” w kolumnie zespołu .

Uwaga : możesz użyć i zamiast lub w celu uwzględnienia tylko wierszy spełniających więcej niż jeden warunek.

Dodatkowe zasoby

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

Jak używać instrukcji SET z wieloma zestawami danych w SAS-ie
Jak wybrać pierwsze N wierszy zbioru danych w SAS-ie
Jak usunąć zbiory danych w SAS-ie

Dodaj komentarz

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