ARRAY OF SAS SUM

【SAS】ARRAYステートメントは配列を設定することができる。

投稿日:2021年12月19日 更新日:

今回はarrayステートメントについて解説します。


/* array */
data data1;
  array hairetsu(3) Id1 Id2 Id3;
  hairetsu(1) = 1111;
  hairetsu(2) = 2222;
  hairetsu(3) = 3333;
run;

  • arrayにより配列を設定できる。
  • 配列要素に値を代入すると、変数に値が入る。

/* hairetsu(1) + hairetsu(2) + hairetsu(3) */
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;
  array hairetsu(3) Id1 Id2 Id3;
  Id4 = hairetsu(1) + hairetsu(2) + hairetsu(3);
run;

  • arrayにより配列を設定できる。
  • set由来の変数名と同じ場合、値を引き継ぐことができる。

/* sum(of hairetsu(*)) */
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;
  array hairetsu(3) Id1 Id2 Id3;
  Id4 = sum(of hairetsu(*));
run;

  • arrayにより配列を設定できる。
  • set由来の変数名と同じ場合、値を引き継ぐことができる。
  • sum(of hairetsu(*))により、全ての要素に対して計算が行われる。

/* {} */
data data1;
  array hairetsu{3} Id1 Id2 Id3;
  hairetsu{1} = 1111;
  hairetsu{2} = 2222;
  hairetsu{3} = 3333;
run;

  • arrayにより配列を設定できる。
  • 配列要素に値を代入すると、変数に値が入る。
  • 括弧はたぶん何でも良い。

-ARRAY, OF, SAS, SUM

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】%MACROはマクロを定義することができる。その2 同名マクロによる再定義【%MEND】

今回は同名マクロによる再定義について解説していきたいと思います。(前回の記事:【SAS】%MACROはマクロを定義することができる。【%MEND】 | ビジネスイッチ (how-to-business …

【SAS】DISTINCTは重複をユニークにする。【SQL】

今回はSQL文のDISTINCTについて解説します。 /* Id1 */ data data1; Id1=1111; Id2=1111; Id3=1111; Id4=1111; output; Id1 …

【SAS】SASで良く使うテクニック。その11「Ctrl+/」~範囲指定でコメントを入れたい時~【SAS Studio】

今回はSASで良く使うテクニックということで、範囲指定でコメントを入れたい時は、「Ctrl+/」が役に立つ理由を解説していきます。 以下のようにソースコードを準備します。(ソースコードの内容は何でも良 …

【SAS】TRANSTRN関数は指定した文字を別の文字に変換する。その2 再帰的使用

今回はTRANSTRN関数の再帰的使用について解説していきます。 (参考:【SAS】TRANSTRN関数は指定した文字を別の文字に変換する。 | ビジネスイッチ (how-to-business.co …

【SAS】【SQL】SQLにおける複数テーブルの結合 その1【UNION ALL】【Snowflake】

今回は複数テーブルの結合について解説します。 /* 複数テーブルの結合_1 */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; …