今回はMEANSについて解説します。
似た文法でSUMMARYプロシージャがあります。
今回のMEANSプロシージャも集計を行うのですが、こちらはデフォルトで「結果」を出力します。
/*means*/
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2; var 金額; by 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/means1.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/means2.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/means3.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/means4-1024x763.png)
- by 番号を1グループとしてvar金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
/*noprint*/
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2 noprint; var 金額; by 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/noprint1.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/noprint2-1024x754.png)
- by 番号を1グループとしてvar金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- noprintにより、「結果」は出力されなくなる。
/* output out= 無し */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2; var 金額; by 番号; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/56c4b0c0ee6251cc597f42c5f364df8e.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/17fef56d1c2c3260e08cbcc33ac76536.png)
- by 番号を1グループとしてvar金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- 「output out=」を無くすことにより、データセット(DATA3)の出力はされない。
/* output out= 無し noprint */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2 noprint; var 金額; by 番号; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/75b3094c539e692c6374d94d26712791.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/8801cb20e68820532e652d387104672b.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/7510be60ada6b63e0341e11874a530e6.png)
- by 番号を1グループとしてvar金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- 「output out=」を無くすことにより、データセット(DATA3)の出力はされない。
- noprintにより、「結果」は出力されなくなる。
- 「結果」も「データセット出力」もできないと、エラーとなる。
/* class */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2; var 金額; class 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/class1.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class2.png)
- class 番号を1グループとしてvar金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- classを使うとAAAAAA, BBBBBB, CCCCCC以外に全体での集計もされる。
/* class sort無し */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
run;
proc means data=data1; var 金額; class 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/05c691b5af0ef32fae74a615b121a28c.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/bb6eef727717bca7f74f2b43f6763d1b.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/1d00fc80d1d392f49c4e2adcc05c235a.png)
- class 番号を1グループとしてvar 金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- classを使うとAAAAAA, BBBBBB, CCCCCC以外に全体での集計もされる。
- classを使うと番号が並んでなくても、実行できる。
/* class N*/
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2 N; var 金額; class 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/class-N1.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class-N2.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class-N3.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class-N4.png)
- class 番号を1グループとしてvar 金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- classを使うとAAAAAA, BBBBBB, CCCCCC以外に全体での集計もされる。
- classを使うと番号が並んでなくても、実行できる。
- Nを指定すると、「結果」はサンプル数のみ表示する。
/* class MEDIAN*/
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc means data=data2 MEDIAN; var 金額; class 番号; output out=data3; run;
![](https://how-to-business.com/wp-content/uploads/2021/11/class-MEDIAN1.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class-MEDIAN2.png)
![](https://how-to-business.com/wp-content/uploads/2021/11/class-MEDIAN3.png)
- class 番号を1グループとしてvar 金額について集計する。
- summaryと同様、meansの出力はoutput out=
- meansはデフォルトで「結果」を出力する。
- classを使うとAAAAAA, BBBBBB, CCCCCC以外に全体での集計もされる。
- classを使うと番号が並んでなくても、実行できる。
- MEDIANを指定すると、「結果」は中央値のみ表示する。