So verwenden sie die indexc-funktion in sas


Sie können die Funktion INDEXC in SAS verwenden, um die Position des ersten Vorkommens eines einzelnen Zeichens in einer Zeichenfolge zurückzugeben.

Diese Funktion verwendet die folgende grundlegende Syntax:

INDEXC(Quelle, Auszug)

Gold:

  • Quelle : Der zu analysierende Kanal
  • extract : Die Zeichenfolge, nach der in der Quelle gesucht werden soll

Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.

Beispiel: Verwendung der INDEXC-Funktion in SAS

Nehmen wir an, wir haben den folgenden Datensatz in SAS, der eine Spalte mit Namen enthält:

 /*create dataset*/
data original_data;
    input name $25.;
    datalines ;
Andy Lincoln Bernard
Michael Smith
Chad Simpson Arnolds
Derrick Smith Henrys
Eric Millerton Smith
Frank Giovanni Goode
;
run ;

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

Mit der Funktion INDEXC können wir die Position des ersten Vorkommens der Zeichen x , y oder z ermitteln:

 /*find position of first occurrence of either x, y or z in name*/
data new_data;
    set original_data;
    first_xyz = indexc (name, 'xyz');
run ;

/*view results*/
proc print data = new_data;

Die neue Spalte mit dem Namen first_xyz zeigt die Position des ersten Vorkommens der Zeichen x , y oder z in der Namensspalte an.

Wenn keines dieser drei Zeichen in der Namensspalte vorhanden ist, gibt die INDEXC- Funktion einfach den Wert 0 zurück.

Aus dem Ergebnis können wir beispielsweise Folgendes ersehen:

Die Position des ersten Auftretens von x, y oder z in der ersten Zeile ist Position 4 . Wir können sehen, dass das Zeichen an Position 4 in der ersten Zeile ein y ist.

Die Position des ersten Vorkommens von x, y oder z in der zweiten Zeile ist 0 , da keiner dieser drei Buchstaben im Namen der zweiten Zeile vorhanden ist.

Und so weiter.

Der Unterschied zwischen INDEX- und INDEXC-Funktionen

Die INDEX- Funktion in SAS gibt die Position des ersten Vorkommens einer bestimmten Teilzeichenfolge in einer anderen Zeichenfolge zurück.

Das folgende Beispiel veranschaulicht den Unterschied zwischen den Funktionen INDEX und INDEXC :

 /*create new dataset*/
data new_data;
    set original_data;
    index_smith = index (name, 'Smith');
    indexc_smith = indexc (name, 'Smith');
run ;

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

Die Spalte „index_smith“ zeigt die Position des ersten Vorkommens der Teilzeichenfolge „Smith“ in der Namensspalte an.

Die Spalte indexc_smith zeigt die Position des ersten Vorkommens der Buchstaben s , m , i , t oder h in der Namensspalte an.

Aus dem Ergebnis können wir beispielsweise Folgendes ersehen:

Die Teilzeichenfolge „Smith“ kommt nie im Vornamen vor, daher gibt index_smith den Wert 0 zurück.

Der Buchstabe i erscheint an der 7. Position des Vornamens, sodass indexc_smith den Wert 7 zurückgibt.

Und so weiter.

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere allgemeine Funktionen in SAS verwenden:

So verwenden Sie die SUBSTR-Funktion in SAS
So verwenden Sie die COMPRESS-Funktion in SAS
So verwenden Sie die FIND-Funktion in SAS
So verwenden Sie die COALESCE-Funktion in SAS

Einen Kommentar hinzufügen

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