Sas: jak przekonwertować zmienną znakową na datę
Możesz użyć funkcji input() w SAS-ie, aby przekonwertować zmienną znakową na format zmiennej daty.
Ta funkcja wykorzystuje następującą podstawową składnię:
date_var = input (character_var, MMDDYY10. ); date_var format MMDDYY10. ;
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: Konwertuj zmienną znakową 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 sześciu 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;
Widzimy, że dzień jest zmienną znakową, ale musi być przedstawiony w formacie daty.
Możemy użyć poniższego kodu, aby utworzyć nowy zbiór danych, w którym konwertujemy zmienną dnia z formatu znakowego na format daty:
/*create new dataset where 'day' is in date format*/
data new_data;
set original_data;
new_day = input (day, MMDDYY10. );
format new_day 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, nowy_dzień , 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 numeryczną
SAS: Jak przekonwertować zmienną numeryczną na znak
SAS: Jak zastąpić brakujące wartości zerem