LesezeichenAbonnierenRSS-Feed abonnieren
Katrin1606
Fluorite | Level 6

Hallo,

 

da ich noch nicht lange SAS nutze, benötige ich bitte Eure Hilfe.

 

Ich habe die Variable Name, Vorname in einer Spalte und möchte diese gerne auf zwei Spalten (Name / Vorname) aufteilen. Dies habe ich auch schon mit der Scan Funktion probiert. Es funktioniert solange wie ich nur 1 Nachnamen und 1 Vornamen habe.

 

Allerdings komme ich an meine Grenzen, da ich auch teilweise Doppel-Nachnamen bzw. drei Vornamen habe.

 

Könnt Ihr mir hier einen Tip geben, wie ich den Data Step schreiben kann?

 

Vielen Dank!

Katrin   

2 ANTWORTEN 2
GrischaPfister
Fluorite | Level 6

Hallo Kartrin,

 

Du kannst der scan() Funktion sagen, welche Zeichen sie als Trenner interpretieren soll, und welche Teil des Textes sind. Wenn die Form IMMER "Nachnahme - KOMMA - weiterer Text" ist, dann trennt das Komma den Nachnahmen von allen weiteren Namensbestandteilen. Hier ein Beispiel:

 

data names;
  Length name $256;
  Input name $50.;
  Cards;
  Mayer, Lena
  Müller-Lüdenscheid, Gans Günter
  Hoffmann von der Fallersleben, Dr. Irgeneiner
  ;
Run;

Data split;
  Length lastName firstName $64;
  Set names;
  lastName = scan(name,1,",");
  firstName = scan(name,2,",");
  Drop name;
  Put lastName= firstName=;
Run;

Im LOG steht dann:

lastName=Mayer firstName=Lena
lastName=Müller-Lüdenscheid firstName=Gans Günter
lastName=Hoffmann von der Fallersleben firstName=Dr. Irgeneiner
NOTE: There were 3 observations read from the data set WORK.NAMES.
NOTE: The data set WORK.SPLIT has 3 observations and 2 variables.
NOTE: DATA statement used (Total process time):
real time 0.02 seconds
cpu time 0.03 seconds

 

Hoffe das hilft weiter - und die Datenqualität stimmt 😉

 

Viele Grüße,

 

Grischa

Katrin1606
Fluorite | Level 6

... Super! Vielen Dank. Hat direkt funktioniert.

 

LG Katrin

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Diskussionsstatistiken
  • 2 Antworten
  • 1488 Aufrufe
  • 5 Kudos
  • 2 in Unterhaltung