konto usunięte

Temat: Problem sasowy

Witam, dopiero zaczynam z sasemi mam problem być może najprostszy z możliwych:) a mianowicie zwracam bazę danych, w której jedna z kolumn zawiera cyfry, ale w formacie tekstowym (do lewej), chcę przesortować kolumnę od najmniejszej do największej wartości, czy ktoś może mi podpowiedzieć jakiego zapytania mogę użyć aby przekonwertować tekst na wartości numeryczne?

z góry dziękuję
Paweł Bednarski

Paweł Bednarski ekspert ds.
aktuarialnych

Temat: Problem sasowy

Najprostsza metoda to pomnożenie przez 1:

Data baza (drop=old_char);
Set baza;
format new_num 15.;
new_num=1*old_char;
Run;

Inna (alternatywna) bardziej elegancka:

Data baza (drop=old_char);
Set baza;
new_num=input(old_char,15.);
Run;

Więcej tu: http://www.pauldickman.com/teaching/sas/char_to_num.php
lub w zwykłym helpie SAS-owym...

konto usunięte

Temat: Problem sasowy

Paweł B.:
Najprostsza metoda to pomnożenie przez 1:

Data baza (drop=old_char);
Set baza;
format new_num 15.;
new_num=1*old_char;
Run;

Inna (alternatywna) bardziej elegancka:

Data baza (drop=old_char);
Set baza;
new_num=input(old_char,15.);
Run;

Więcej tu: http://www.pauldickman.com/teaching/sas/char_to_num.php
lub w zwykłym helpie SAS-owym...
Paweł, mogę się dowiedzieć co daje ten format 15. a nie np. best15. (jeśli taki istnieje)?
Nigdy bym na to nie wpadł ale jeśli zadziała propozycja Pawła to przy niej pozostań, ale proponuję wujka google zapytać o "sas input filetype:pdf", pdf jest po to by odsiać html-e o wątpliwej wartości :)
Ogólnie w SAS masz (przy oczywiście wielkim uproszczeniu i skróceniu do Twojego pytania) dwa typy potrzebnych Ci operacji, zamiana liczb (także dat, gdyż dla SASa data to liczba) na tekst i tekstu na liczby. A więc masz INPUT i PUT.
Po za tym masz długości pola i formaty. To nie jest Oracle, w SAS się ciężko oddycha :)

konto usunięte

Temat: Problem sasowy

dzięki wielkie, będę walczył dalej:) pzdr

Podobne tematy


Następna dyskusja:

Problem z kodem SAS




Wyślij zaproszenie do