INDEXC SAS

【SAS】INDEXC関数は文字列から特定の文字を探して位置を返す。

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

今回はINDEXC関数について解説します。


data data1;
  Id1="1111"; Id2="1111"; Id3="1111";
    output;
  Id1="2111"; Id2="2111"; Id3="2111";
    output;
  Id1="2211"; Id2="2211"; Id3="2211";
    output;
  Id1="2221"; Id2="2221"; Id3="2221";
    output;
  Id1="2222"; Id2="2222"; Id3="2222";
    output;
  Id1="3333"; Id2="3333"; Id3="3333";
    output;
run;

data data2; set data1;
  Id4  = indexc(Id1, "1" );
run;

  • INDEXCにより、第二引数を1文字ずつ分解し、文字が第一引数の何文字目に見つかったかを返す。
  • 見つからない場合は0。

/* indexc 12 */
data data1;
  Id1="1111"; Id2="1111"; Id3="1111";
    output;
  Id1="2111"; Id2="2111"; Id3="2111";
    output;
  Id1="2211"; Id2="2211"; Id3="2211";
    output;
  Id1="2221"; Id2="2221"; Id3="2221";
    output;
  Id1="2222"; Id2="2222"; Id3="2222";
    output;
  Id1="3333"; Id2="3333"; Id3="3333";
    output;
run;

data data2; set data1;
  Id4  = indexc(Id1, "12" );
run;

  • INDEXCにより、第二引数を1文字ずつ分解し、文字が第一引数の何文字目に見つかったかを返す。(1または2を探す)
  • 見つからない場合は0。

-INDEXC, SAS

執筆者:


comment

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

関連記事

【SAS】SASで良く使うテクニック。その5 「SUM関数」~データセットの差分がいくつあるのか数えたい時~【Excel】

今回はSASで良く使うテクニックということで、データセットの差分がいくつあるのか数えたいときは「SUM関数」が役に立つ理由を解説していきます。 (参考:【SAS】SASで良く使うテクニック。その1 E …

【SAS】プロパティ表示を使う方法

今回はプロパティ表示について触れていきます。 /* data1_1 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; id1=”22 …

【SAS】列名と列ラベルの表示を切り替える方法【LABEL】

今回はデータセットにおける列名と列ラベルの表示を切り替える方法を解説します。 /* label */ data data1; attrib Id1 length = 8 label = “Id1111 …

【SAS】SETステートメントに複数データセットを設定すると縦結合できる

今回はSETについて解説します。 /* 1~7 */ data data1; Id1=1111; Char1=”AAAA”; output; Id1=2222; Char1=”BBBB”; outpu …

【SAS】データセットをエクセルファイルとしてエクスポート(出力)する

今回はデータセットをエクセルファイルとしてエクスポートする方法について解説します。 data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; id …