- Get link
- X
- Other Apps
SAS DATES | MDY FUNCTION
-->Creating a SAS Date From Separate Variables Like Month,Year,Day...
DATA DATE;
INPUT @1 MONTH 2.
@7 YEAR 4.
@13 DAY 2.;
DATE = MDY(MONTH,DAY,YEAR);
FORMAT DATE MMDDYY10.;
DATALINES;
05 2000 25
11 2001 02
03 2003 03
;
TITLE "LISTING OF DATES";
PROC PRINT NOOBS;
RUN;
Explanation:Here the Month,Day,Year are not in the form of dates.But MDY function used to create SAS dates...
OUTPUT:
LISTING OF DATES |
MONTH | YEAR | DAY | DATE |
---|---|---|---|
5 | 2000 | 25 | 05/25/2000 |
11 | 2001 | 2 | 11/02/2001 |
3 | 2003 | 3 | 03/03/2003 |
-->Program To Read The Dates And Set The Day Of The Month To 15 If The Day Is Missing From The Date...
DATA MISSING;
INPUT @1 DUMMY $10.;
DAY = SCAN(DUMMY,2,'/');
IF NOT MISSING(DAY) THEN DATE=INPUT(DUMMY,MMDDYY10.);
ELSE DATE = MDY(INPUT(SCAN(DUMMY,1,'/'),2.),15,
INPUT(SCAN(DUMMY,3,'/'),4.));
FORMAT DATE DATE9.;
DATALINES;
10/21/1946
1/ /2000
01/ /2002
;
TITLE "LISTING OF MISSING";
PROC PRINT NOOBS;
RUN;
Explanation:Here Program Reads The Date And It is used When Already Stored Dates Are Available.When The Day Is Missing Here 15 Is Placing As the Day Of The Month.
The Entire Date Is Read As Character String As Variable DUMMY.Next,Scan Function Is Executed With The Slash(/) As The Word Delimeter. The Second Word Is The Month.If This Is Not Missing,The INPUT Function Is Used To Convert Character String To SAS Dates.
If DAY Is Missing,The MDY Function Is Used To Create The SAS Date,With The Value Of 15 Representing The Day Of The Month...
OUTPUT:
LISTING OF MISSING |
DUMMY | DAY | DATE |
---|---|---|
10/21/1946 | 21 | 21OCT1946 |
1/ /2000 | 15JAN2000 | |
01/ /2002 | 15JAN2002 |
TRY THIS AND COMMENT ...
--PLEASE FOLLOW THE BLOG FOR MORE UPDATES...
--FOLLOW US IN FACEBOOK SASALL4YOU AND JOIN ...
--JOIN US IN FACEBOOK AND TELEGRAM CHANNEL FOR MORE UPDATES
CLICK HERE: https://t.me/SasAll4You
- Get link
- X
- Other Apps
Comments
Post a Comment