Alphanumerisch in numerisch umwandeln

Hallo,

wie kann man einen aus einer csv-Datei eingelesenen Wert z.B. 563K in numerischen Wert umwandeln?
In der SAS-Datei müssen nur die ersten drei Stellen angezeigt werden, deshalb schneide ich die vierte Stelle ab, in dem ich einfach als informat $3. eingebe. Das Feld muss aber numerisch sein, und das klappt nicht.

Danke im Voraus!

Alphanumerisch in numerisch umwandeln

Hallo bezNika,
Du kannst mit dem Befehl input(variable, format) aus einem String einen numerischen Wert erzeugen. Die Verwendung eines Informats beim Einlesen der Daten funktioniert nicht, weil trotz informat 3. "563K" verarbeitet wird und dann, weil nicht numerisch, eine Fehlermeldung erzeugt und die Variable leer bleibt.

Gruß Guido

data text;
length text $12;
input text $;
cards;
563K
654k
002k
;
run;

data numerisch;
set text;
length numerisch 8;
numerisch = input(substr(text,1,3),3.);
run;

Zeichen numerisch einlesen

Ok, Klugschwätzeralarm...

data text;
input text 1-3 @4 suffix $;
cards;
563K
654k
002k
;

Gilt natürlich nur für die Daten wie hier angeordnet :-)...für das CSV Beispiel ist natürlich das von Armageddon genannte INPUT notwendig.

Danke!

Hallo Guido,

so klappt es! Vielen, vielen Dank noch mal!