Функция ввода и ввода в SAS - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть набор данных в SAS, и я хочу создать следующие новые переменные по переменной Date, которая уже присутствует в данных.

Я уже написал код, но я немного запутался в PUT и INPUT функция.

Пожалуйста, проверьте мои коды и сообщите мне изменения, которые я должен сделать.

1.Year fromпеременная даты

2. Месяц с переменной даты

3. День с переменной даты

4. Час от запланированной переменной времени отправления

Пример данных

Дата |Время

01/01/2013 |529

05/27/2013 |540

06/12/2013 |600

09/28/2013 |2025

09/30/2013 |2040

data case_1.Ques_1(keep=Year Month_name Day hour);
set case_1.flights;
Year=year(Date);
month_name=put(date, monname.);
Day=put(date,downame.);
hour=put(time,hour.);
run;

1 Ответ

0 голосов
/ 19 сентября 2019

Используйте здесь функции, а не форматы, хотя вы можете.Обычно день обычно интерпретируется как день месяца, тогда как вместо него вы получаете день недели или день недели.

Все это предполагает, что ваши данные представляют собой дату SAS, числовую с форматом даты.

year = year(date);
month = month(date);
month_name = put(date, monname.);
day = day(date);
weekday = put(date, downame.);
hour = hour(time);

PUT() применяет формат и управляет отображением значения.

INPUT() считывает значение и использует текущий внешний вид для правильного считывания данных.

...