У меня есть следующий скрипт для ввода моих данных и создания набора данных.SAS: Как создать поле даты из поля месяца, поля дня и года
data HotelRooms;
INFILE '/folders/myfolders/Hotel.dat' missover;
input RoomNo 1-4 NumbeGuests 7-8InMonth $ Inday $ InYear $ OutMonth $
OutDay $ OutYear $ UseWireless :$3. DaysUsed RoomType$53-68 RoomRate 69-71;
checkindate=CAT(InMonth,InDay,InYear);
checkoutdate=CAT(OutMonth, OutDay, OutYear);
If UseWireless='YES' then fee=9.95;
run;
proc print data=HotelRooms noobs;
format checkindate MMDDYY10.;
format checkoutdate MM/DD/YY/10.;
Run;
Нагрузка данных в набор данных просто отлично, но когда я создаю дату CheckIN и дату оформления заказа я столкнулся с проблемами. Когда я использую CAT, я не могу добавить формат даты. Печать не печатает ни/или - в дате, только mm dd yyyy. Мне также нужно будет использовать даты для расчетов.
Любая помощь будет оценена по достоинству.
'MISSOVER' может вызвать ошибки с тем, что INPUT. Если строка ввода имеет длину всего 70 символов, то RoomRate будет отсутствовать, даже если в столбцах 69 и 70 будет номер. В общем случае вы должны использовать 'TRUNCOVER' вместо' MISSOVER', чтобы исправить только эту проблему. – Tom