So verwenden sie die scan-funktion in sas (mit beispielen)
Sie können die SCAN- Funktion in SAS verwenden, um das n-te Wort aus einer Zeichenfolge zu extrahieren.
Diese Funktion verwendet die folgende grundlegende Syntax:
SCAN (Zeichenfolge, Zahl)
Gold:
- string : Die zu analysierende Zeichenfolge
- count : Das n-te zu extrahierende Wort
Hier sind die drei häufigsten Möglichkeiten, diese Funktion zu nutzen:
Methode 1: Extrahieren Sie das n-te Wort aus der Zeichenfolge
data new_data;
set original_data;
second_word = scan (string_variable, 2 );
run ;
Methode 2: Extrahieren Sie das letzte Wort aus der Zeichenfolge
data new_data;
set original_data;
last_word = scan (string_variable, -1 );
run ;
Methode 3: Mehrere Wörter aus einer Zeichenfolge extrahieren
data new_data;
set original_data;
first_word = scan (string_variable, 1 );
second_word = scan (string_variable, 2 );
third_word = scan (string_variable, 3 );
run ;
Die folgenden Beispiele zeigen, wie jede Methode mit dem folgenden Datensatz in SAS verwendet wird:
/*create dataset*/
data original_data;
input name $20. dirty;
datalines ;
Andy Lincoln Bernard 55
Barren Michael Smith 41
Chad Simpson Arnolds 13
Derrick Parson Henry 29
Eric Miller Johansen 47
Frank Giovanni Goode 61
;
run ;
/*view dataset*/
proc print data = original_data;
Beispiel 1: Extrahieren Sie das n-te Wort aus der Zeichenfolge
Der folgende Code zeigt, wie das zweite Wort aus jeder Zeichenfolge in der Namensspalte extrahiert wird:
/*extract second word in each row of name column*/
data new_data;
set original_data;
second_word = scan (name, 2 );
run ;
/*view results*/
proc print data =new_data;
Beachten Sie, dass die neue Spalte mit dem Namen „second_word“ das zweite Wort jeder Zeichenfolge in der Namensspalte enthält.
Beispiel 2: Extrahieren Sie das letzte Wort aus der Zeichenfolge
Der folgende Code zeigt, wie der Wert -1 in der Scan-Funktion verwendet wird, um das letzte Wort jeder Zeichenfolge in der Namensspalte zu extrahieren:
/*extract last word in each row of name column*/
data new_data;
set original_data;
last_word = scan (name, -1 );
run ;
/*view results*/
proc print data =new_data;
Beachten Sie, dass die neue Spalte mit dem Namen last_word das letzte Wort jeder Zeichenfolge in der Namensspalte enthält.
Beispiel 3: Extrahieren Sie mehrere Wörter aus einer Zeichenfolge
Der folgende Code zeigt, wie Sie mit der Scan-Funktion jedes Wort aus jeder Zeichenfolge in der Namensspalte extrahieren:
/*extract each word in each row of name column*/
data new_data;
set original_data;
first_word = scan (name, 1 );
second_word = scan (name, 2 );
third_word = scan (name, 3 );
run ;
/*view results*/
proc print data =new_data;
Beachten Sie, dass drei neue Spalten erstellt wurden, die das erste, zweite und dritte Wort jeder Zeichenfolge in der Namensspalte enthalten.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:
So verwenden Sie die SUBSTR-Funktion in SAS
So verwenden Sie die FIND-Funktion in SAS
So verwenden Sie die COALESCE-Funktion in SAS