2011-10-12 5 views
7

Pracuję z zestawem danych w SAS, zawierającym wiele zmiennych.format konwertujący (z daty na numeryczny) przy użyciu SAS

Jedną z tych zmiennych jest zmienna DATE i ma format daty/czasu. Wygląda to tak:

12FEB97:00:00:00 
27MAR97:00:00:00 
14APR97:00:00:00 

Chodzi o to, że chciałbym przekonwertować tę zmienną na format NUMERYCZNY. I chciałbym, aby uzyskać następujące wyniki (w oparciu o wcześniej pokazanych 3 przykłady):

199702 
199703 
199704 

Czy macie jakieś pomysły jak to zrobić? Przeczytałem już wiele dokumentów, plików PDF itp., Ale wciąż nie mogłem znaleźć odpowiedniego rozwiązania.
Dziękuję bardzo!

Odpowiedz

11

Najpierw należy wyodrębnić datę ze zmiennej datetime. Można użyć datepart funkcję:

date = datepart(var); 

Następnie chcesz umieścić tę zmienną (która wciąż będzie zakodowane jako liczba data) pod numer, który można odczytać rok i miesiąc. Zrób to z putn:

date_as_num = putn(date,'yymmn6.'); 
+1

Cudownie, działa, cudownie! Dziękuję bardzo kochanie itzy, nie możesz sobie nawet wyobrazić, jak szczęśliwy jestem teraz :) – Laszlo

+1

Bingo! Dziękuję, szukałem tego rozwiązania już od kilku godzin. Prosty i zwięzły. –