Sas で欠損値のある行を削除する方法
次の基本構文を使用して、SAS のデータセットから欠損値のある行を削除できます。
data new_data;
set my_data;
if cmiss(of _all_) then delete;
run ;
この特定の例では、 my_dataという元のデータセット内の欠損値を持つすべての行が削除された、 new_dataという新しいデータセットを作成します。
次の例は、この構文を実際に使用する方法を示しています。
例: SAS で欠損値のある行を削除する
SAS に、さまざまなバスケットボール チームに関する情報を含む次のデータセットがあるとします。
/*create dataset*/
data my_data;
input team $points assists;
datalines ;
Mavs 113 22
Pacers 95.
Cavs. .
Lakers 114 20
Heat 123 39
Kings. 22
Raptors 105 11
Hawks 95 25
Magic 103 26
Spurs 119.
;
run ;
/*view dataset*/
proc print data =my_data;
値が欠落している行がいくつかあることに注意してください。
次のコードを使用して、列に欠損値がある既存のデータセットからすべての行を削除する新しいデータセットを作成できます。
/*create new dataset that removes rows with missing values from existing dataset*/
data new_data;
set my_data;
if cmiss(of _all_) then delete;
run ;
/*view new dataset*/
proc print data =new_data;
欠損値のあるすべての行がデータセットから削除されていることがわかります。
注意 #1 : CMISS関数の_all_引数は、SAS が各行のすべての列で欠損値を検索することを指定します。
注 #2 : CMISS機能の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。