Sas でデータをサブセット化する方法 (3 つの例)
SAS でデータセットをサブセット化する最も一般的な 3 つの方法は次のとおりです。
方法 1: 保持する列を選択する
data new_data;
set original_data;
keep var1 var3;
run ;
方法 2: 削除する列を選択する
data new_data;
set original_data;
dropvar4 ;
run ;
方法 3: 条件に基づいて保持する行を選択する
data new_data;
set original_data;
if var1 < 25 then delete;
run ;
次の例は、SAS の次のデータセットで各メソッドを使用する方法を示しています。
/*create dataset*/
data original_data;
input team $pointsrebounds;
datalines ;
Warriors 25 8
Wizards 18 12
Rockets 22 6
Celtics 24 11
Thunder 27 14
Spurs 33 19
Nets 31 20
;
run ;
/*view dataset*/
proc print data = original_data;
例 1:保持する列を選択する
次のコードは、 KEEPステートメントを使用してデータセットをサブセット化し、特定の列のみを保持する方法を示しています。
/*create new dataset*/
data new_data;
set original_data;
keep team points;
run ;
/*view new dataset*/
proc print data = new_data;
例 2:削除する列の選択
次のコードは、 DROPステートメントを使用してデータセットをサブセット化し、特定の列を削除する方法を示しています。
/*create new dataset*/
data new_data;
set original_data;
drop points;
run ;
/*view new dataset*/
proc print data = new_data;
例 3:条件に基づいて保持する行を選択する
次のコードは、 DELETEステートメントを使用してデータセットをサブセット化し、ポイント列の値が 25 未満である特定の行をデータセットから削除する方法を示しています。
/*create new dataset*/
data new_data;
set original_data;
if points < 25 then delete;
run ;
/*view new dataset*/
proc print data = new_data;
OR 「 |」も使用できます。 」を使用して、ポイントが25 未満またはリバウンドが10 未満の行を削除します。
/*create new dataset*/
data new_data;
set original_data;
if points < 25 | rebounds < 10 then delete;
run ;
/*view new dataset*/
proc print data = new_data;
AND ” & ” 演算子を使用して、ポイントが25 未満でバウンスが10 未満の行を削除することもできます。
/*create new dataset*/
data new_data;
set original_data;
if points < 25 & rebounds < 10 then delete;
run ;
/*view new dataset*/
proc print data = new_data;
追加リソース
次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。