Как преобразовать datetime в дату в sas


Самый простой способ преобразовать дату/время в дату в SAS — использовать функцию DATEPART .

Эта функция использует следующий базовый синтаксис:

 date = put ( datepart (some_datetime), mmddyy10. );

Аргумент mddyy10. указывает, что дата должна быть в формате 15.10.2022.

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: преобразование даты и времени в дату в SAS

Допустим, у нас есть следующий набор данных в SAS, который содержит столбец дат и времени:

 /*create dataset*/
data original_data;
    format some_datetime datetime23.;
    input some_datetime:datetime23.;
    datalines ;
14OCT2022:0:0:0
09NOV2022:0:0:0
14NOV2022:0:0:0
15NOV2022:0:0:0
22DEC2022:0:0:0
24DEC2022:0:0:0
04JAN2023:0:0:0
;
run ;

/*view dataset*/
proc print data = original_data; 

Следующий код показывает, как использовать функцию DATEPART для создания нового набора данных, в котором значения в столбце datetime отформатированы как даты в разных форматах:

 /*create new dataset with datetime formatted as date*/
data new_data;
set original_data;
    date_mmddyyyy = put ( datepart (some_datetime), mmddyy10.);
    date_yyyymmdd = put ( datepart (some_datetime), yymmdd10.);
    date_date9 = put ( datepart (some_datetime), date9.);
    date_default = datepart (some_datetime);
run ;

/*view new dataset*/
proc print data = new_data; 

Обратите внимание, что в четырех новых столбцах отображается дата из исходного столбца datetime в разных форматах.

По умолчанию функция DATEPART преобразует дату/время в количество дней, прошедших с 1 января 1960 года.

Таким образом, новый столбец с именем date_default отображает количество дней с 1 января 1960 года для каждой даты и времени.

Примечание . Полную документацию по функции SAS DATEPART можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Как добавить дни к дате в SAS
Как преобразовать числовую переменную в дату в SAS
Как рассчитать разницу между двумя датами в SAS

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *