Sas で anydigit 関数を使用する方法


SAS でANYDIGIT関数を使用すると、指定された文字列の最初の桁の位置を返すことができます。

この関数は次の基本構文を使用します。

ANYDIGIT(式, [開始])

金:

  • : 検索する文字列
  • start (オプション) : 検索の開始位置。

次の例は、この関数を実際に使用する方法を示しています。

例: SAS での ANYDIGIT 関数の使用

SAS に、会社のさまざまな従業員に関する情報を含む次のデータセットがあるとします。

 /*create dataset*/
data my_data;
    input employeeID $sales;
    datalines ;
54AAF 23
0009A 38
BC18B 40
09:30 12
04429 65
B1300 90
B1700 75
RRHHJ 35
0Y009 40
C6500 23
;
run ;

/*view dataset*/
proc print data =my_data; 

ANYDIGIT関数を使用して、 EmployeeID列の最初の桁の位置を見つけることができます。

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID);
run ;

/*view new dataset*/
proc print data = new_data;

firstDigitという新しい列には、 EmployeeID列で最初に出現する数字の位置が表示されます。

例えば:

  • 54AAF の最初の桁は1の位置にあります。
  • 0009A の最初の桁は1の位置にあります。
  • BC18B の最初の桁は3の位置にあります。

等々。

特定の従業員 ID に数字がない場合は、値0が返されます。

ANYDIGIT関数のstart引数を使用して、検索の開始位置を指定することもできます。

たとえば、次のコードを使用して、 EmployeeID列の位置 3 から始まる最初の桁の位置を見つけることができます。

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID, 3 );
run ;

/*view new dataset*/
proc print data =new_data; 

数字の検索が位置3から始まるため、最初の 2 つの位置にアルファベット文字のみが含まれるEmployeeID値は、 firstDigit列に値0を受け取ることに注意してください。

追加リソース

次のチュートリアルでは、SAS の他の一般的な関数の使用方法について説明します。

SAS の文字列から特殊文字を削除する方法
SAS で文字列内の文字を置換する方法
SAS で文字変数を数値に変換する方法

コメントを追加する

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