今回はSUM関数を用いた足し算で、ofを使った計算について解説します。
(前回はSUM関数を用いた足し算について解説しました。⇒【SAS】足し算。その2(SUM関数を用いた計算) | ビジネスイッチ (how-to-business.com))
/* sum(of Id1-Id3) */
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;
Id4 = sum(of Id1-Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id3_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id3_2.png)
- sum(of Id1-Id3)により、数字を足すことができる。
/* null */
data data1;
Id1=1111; Id2=1111; Id3=1111;
output;
Id1=2222; Id2=2222; Id3=2222;
output;
Id1=3333; Id2=3333; Id3=.;
output;
run;
data data2; set data1;
Id4 = sum(of Id1-Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/null_1-2.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/null_2-2.png)
- sum(of Id1-Id3)により、数字を足すことができる。
- Nullの変数を足しても、正しく計算される。
/* aaaa */
data data1;
Id1=1111; Id2=1111; Id3="aaaa";
output;
Id1=2222; Id2=2222; Id3="aaaa";
output;
Id1=3333; Id2=3333; Id3="aaaa";
output;
run;
data data2; set data1;
Id4 = sum(of Id1-Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/aaaa_1-2.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/aaaa_2-2.png)
- sum(of Id1-Id3)により、数字を足すことができる。
- 文字列型の変数を足しても、正しく計算される。
/* sum(of Id1 + Id2 + Id3) */
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;
Id4 = sum(of Id1 + Id2 + Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3_2.png)
- sum(of Id1 + Id2 + Id3)は書き方が正しくないため、エラーとなる。
/* sum(of Id1 Id2 Id3) */
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;
Id4 = sum(of Id1 Id2 Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3_1-1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3_2-1.png)
- sum(of Id1 Id2 Id3)により、数字を足すことができる。(⇒これにより変数名に規則性が無くても使える)
/* sum(of Id1 Id2 Id3) null */
data data1;
Id1=1111; Id2=1111; Id3=1111;
output;
Id1=2222; Id2=2222; Id3=2222;
output;
Id1=3333; Id2=3333; Id3=.;
output;
run;
data data2; set data1;
Id4 = sum(of Id1 Id2 Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3-null_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3-null_2.png)
- sum(of Id1 Id2 Id3)により、数字を足すことができる。(⇒これにより変数名に規則性が無くても使える)
- Nullの変数を足しても、正しく計算される。
/* sum(of Id1 Id2 Id3) aaaa */
data data1;
Id1=1111; Id2=1111; Id3="aaaa";
output;
Id1=2222; Id2=2222; Id3="aaaa";
output;
Id1=3333; Id2=3333; Id3="aaaa";
output;
run;
data data2; set data1;
Id4 = sum(of Id1 Id2 Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3-aaaa_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1-Id2-Id3-aaaa_2.png)
- sum(of Id1 Id2 Id3)により、数字を足すことができる。(⇒これにより変数名に規則性が無くても使える)
- 文字列型の変数を足しても、正しく計算される。
/* sum(of Id1,Id2,Id3) */
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;
Id4 = sum(of Id1,Id2,Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1Id2Id3_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1Id2Id3_2.png)
- sum(of Id1,Id2,Id3)により、数字を足すことができる。(⇒これにより変数名に規則性が無くても使える)
/* sum(of Id1,Id2,Id3) null */
data data1;
Id1=1111; Id2=1111; Id3=1111;
output;
Id1=2222; Id2=2222; Id3=2222;
output;
Id1=3333; Id2=3333; Id3=.;
output;
run;
data data2; set data1;
Id4 = sum(of Id1,Id2,Id3);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1Id2Id3-null_1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-Id1Id2Id3-null_2.png)
- sum(of Id1,Id2,Id3)により、数字を足すことができる。(⇒これにより変数名に規則性が無くても使える)
- Nullの変数を足しても、正しく計算される。
/* sum(of *) */
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;
Id4 = sum(of *);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-_1..png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-_2.png)
- sum(of *)は書き方が正しくないため、エラーとなる。
- 「*で全ての変数を選択」みたいなことはできない。
/* sum(of _ALL_) */
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;
Id4 = sum(of _ALL_);
run;
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-_ALL__1.png)
![](https://how-to-business.com/wp-content/uploads/2021/12/sumof-_ALL__2.png)
- sum(of _ALL_)により数字を足すことができる。(全ての変数を指定)