Вот три наиболее распространенных способа удаления строк в SAS:
Способ 1: удаление строк на основе одного условия
data new_data;
set original_data;
if var1 = " string " then delete;
run ;
Способ 2: удаление строк на основе нескольких условий
data new_data;
set original_data;
if var1 = " string " and var2 < 10 then delete;
run ;
Способ 3: удаление строк на основе одного из нескольких условий
data new_data;
set original_data;
if var1 = " string " or var2 < 10 then delete;
run ;
В следующих примерах показано, как использовать каждый метод со следующим набором данных в SAS:
/\*create dataset\*/
data original_data;
input team $ position $ points;
datalines ;
A Guard 15
A Guard 19
A Guard 22
A Forward 25
A Forward 27
B Guard 11
B Guard 13
B Forward 19
B Forward 22
B Forward 26
;
run ;
/\*view dataset\*/
proc print data =original_data;

Пример 1: удаление строк на основе одного условия
В следующем коде показано, как удалить все строки из набора данных, где команда равна «А».
/\*create new dataset\*/
data new_data;
set original_data;
if team = " A " then delete;
run ;
/\*view new dataset\*/
proc print data =new_data;

Обратите внимание, что все строки, в которых команда была равна «А», были удалены.
Пример 2. Удаление строк на основе нескольких условий
В следующем коде показано, как удалить все строки из набора данных, где команда равна «А», а количество баллов меньше 20:
/\*create new dataset\*/
data new_data;
set original_data;
if team = " A " and points < 20 then delete;
run ;
/\*view new dataset\*/
proc print data =new_data;

Обратите внимание, что две строки, в которых команда была равна «А» и количество очков было меньше 20, были удалены.
Пример 3. Удаление строк на основе одного из нескольких условий
В следующем коде показано, как удалить все строки из набора данных, где команда равна «А» или количество баллов меньше 20:
/\*create new dataset\*/
data new_data;
set original_data;
if team = " A " or points < 20 then delete;
run ;
/\*view new dataset\*/
proc print data =new_data;

Обратите внимание, что восемь строк, в которых команда была равна «А» или количество очков было меньше 20, были удалены.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как использовать сводку процедур в SAS
Как переименовать переменные в SAS
Как создать новые переменные в SAS