今回はSASのif文について解説していきたいと思います。
【IF文の関連記事】
- (明示的、暗黙的OUTPUT:【SAS】OUTPUTとDELETEの「明示的な使い方」「暗黙的な使い方」 | ビジネスイッチ (how-to-business.com))
- (IFは入力データセットに無い項目を条件文に使えるが、WHEREは使えない:【SAS】計算で求められた変数に対するIFとWHEREの振舞いの違い【SAS Base Programming対策1】 | ビジネスイッチ (how-to-business.com))
/* then有 */
data data1;
id1="1111"; id2="1111"; id3="1111";
output;
id1="2222"; id2="2222"; id3="2222";
output;
id1="3333"; id2="3333"; id3="3333";
output;
run;
data data2; set data1;
if id1 = "2222" then id4 = "2222";
run;
![](https://how-to-business.com/wp-content/uploads/2023/01/db34de4bdac92cd6457ec77413ffd050.png)
![](https://how-to-business.com/wp-content/uploads/2023/01/5a0d3311b06b1e8a743b51cbae3d2981.png)
- IF文によって、処理を分岐できる。
- id1 = “2222”のとき、id4 = “2222”としている。(それ以外は何もしないため、id4は欠損する)
/* then無し */
data data1;
id1="1111"; id2="1111"; id3="1111";
output;
id1="2222"; id2="2222"; id3="2222";
output;
id1="3333"; id2="3333"; id3="3333";
output;
run;
data data2; set data1;
if id1 = "2222";
run;
![](https://how-to-business.com/wp-content/uploads/2023/01/2bb9329aca5f20eacd77ece8b46d2d6a.png)
![](https://how-to-business.com/wp-content/uploads/2023/01/8b0cdcdfd4f9ba4b97677806b523c0fc.png)
- IF文によって、処理を分岐できる。
- thenが無い時は暗黙的にoutputをする。(参考:【SAS】OUTPUTとDELETEの「明示的な使い方」「暗黙的な使い方」 | ビジネスイッチ (how-to-business.com))
- id1 = “2222”のとき、出力する。(それ以外は出力しない)