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 Studioのフィルター機能の使い方を解説 その1 ~文字型~

今回はSAS Studioのフィルター機能について解説します。 /* 文字型 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; id …

【SAS】FORMATステートメントは文字列の出力形式を変換する。

今回はFORMATステートメントについて解説します。 /* format */ data data1; Id1=111111; output; run; data data2; set data1; …

【SAS】DROPで良く問われる文法【SAS Base Programming対策8】

今回もDROPについて解説します。 (対比:KEEP 【SAS】KEEPはカラムの選択に使える。 | ビジネスイッチ (how-to-business.com)) 過去記事ではDROPの使い方について …

【SAS】SAS日時値から0埋めの時間表記に変換する方法【TOD】【DATETIME】【PUT】

今回はDATETIMEでSAS日時値を取得した後に、TODを使って0埋めの時間表記に変換する方法について解説していきます。 (PUTの形式変換:【SAS】PUT+DATE,YYMMDDはSAS日付値を …

【SAS】COALESCEはNULLを数字に置き換える

今回はCOALESCEについて解説します。 /*coalesce 正常形*/ data data1; id=”A”; chiku=1111; output; id=”B”; chiku=2222; o …