Hoe de anydigit-functie in sas te gebruiken


U kunt de functie ANYDIGIT in SAS gebruiken om de positie van het eerste cijfer in een bepaalde tekenreeks te retourneren.

Deze functie gebruikt de volgende basissyntaxis:

ELK DIGIT(expressie, [start])

Goud:

  • expressie : de tekenreeks waarnaar moet worden gezocht
  • start (optioneel) : de startpositie van waaruit moet worden gezocht.

Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.

Voorbeeld: gebruik van de functie ANYDIGIT in SAS

Stel dat we de volgende dataset in SAS hebben die informatie bevat over verschillende werknemers van een bedrijf:

 /*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; 

We kunnen de functie ANYDIGIT gebruiken om de positie van het eerste cijfer in de kolom EmployeeID te vinden:

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

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

De nieuwe kolom firstDigit geeft de positie weer van de eerste keer dat een cijfer in de kolom EmployeeID voorkomt.

Bijvoorbeeld:

  • Het eerste cijfer van 54AAF staat op positie 1 .
  • Het eerste cijfer van 0009A staat op positie 1 .
  • Het eerste cijfer van BC18B staat op positie 3 .

Enzovoort.

Als er geen cijfers zijn voor een bepaalde werknemers-ID, wordt de waarde 0 geretourneerd.

We kunnen ook het startargument in de functie ANYDIGIT gebruiken om een startpositie op te geven van waaruit moet worden gezocht.

We kunnen bijvoorbeeld de volgende code gebruiken om de positie van het eerste cijfer in de kolom EmployeeID te vinden , beginnend bij positie 3 :

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

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

Houd er rekening mee dat EmployeeID- waarden die alleen een alfabetisch teken op de eerste twee posities bevatten, nu de waarde 0 krijgen in de firstDigit- kolom, aangezien het zoeken naar cijfers nu begint op positie 3 .

Aanvullende bronnen

In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende functies in SAS kunt gebruiken:

Speciale tekens verwijderen uit tekenreeksen in SAS
Hoe tekens in een string in SAS te vervangen
Hoe u een tekenvariabele naar numeriek converteert in SAS

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert