Sas: jak przekonwertować zmienną numeryczną na datę
Możesz użyć następującej podstawowej składni, aby przekonwertować zmienną numeryczną na zmienną daty w SAS-ie:
date_var = input ( put (numeric_var, 8 .), MMDDYY10. );
date_var format MMDDYY10. ;
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Powiązane: Jak przekonwertować zmienną numeryczną na znak w SAS-ie
Przykład: Konwertuj zmienną numeryczną na datę w SAS-ie
Załóżmy, że mamy następujący zestaw danych w SAS-ie, który pokazuje całkowitą sprzedaż zrealizowaną przez sklep w różnych dniach:
/*create dataset*/ data original_data; input day sales; datalines ; 01012022 15 01022022 19 01052022 22 01142022 11 01152022 26 01212022 28 ; run ; /*view dataset*/ proc print data = original_data;
Możemy wykorzystać zawartość procedury do wyświetlenia typu danych każdej zmiennej w zbiorze danych:
/*display data type for each variable*/
proc contents data =original_data;
Widzimy, że dzień i sprzedaż są zmiennymi numerycznymi.
Możemy użyć poniższego kodu, aby utworzyć nowy zbiór danych, w którym konwertujemy zmienną dnia z wartości liczbowych na datę:
/*create new dataset where 'day' is date*/
data new_data;
set original_data;
date_day = input ( put (day, 8. ), MMDDYY10.) ;
date_day format MMDDYY10. ;
drop day;
run ;
/*view new dataset*/
proc print data = new_data;
Uwaga : Użyliśmy funkcji drop , aby usunąć pierwotną zmienną dnia ze zbioru danych.
Widzimy, że nowa zmienna, którą utworzyliśmy, date_day , ma format daty.
Należy pamiętać, że MMDDYY10. to tylko jeden z możliwych formatów daty, jakiego mogliśmy użyć. Pełną listę formatów daty SAS-owej znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:
SAS: Jak przekonwertować zmienną znakową na datę
SAS: Jak przekonwertować zmienną znakową na numeryczną
SAS: Konwertuj ciągi na wielkie, małe i właściwe litery