DATA Step, Macro, Functions and more

Comparing specific dates

Accepted Solution Solved
Reply
Frequent Contributor
Posts: 138
Accepted Solution

Comparing specific dates

Hi everyone,

I have data that look like this:

ID       Date

1        01/13

1        04/13

1        05/13

1        09/13

2        03/13

2        04/13

What I need is to determine the amount of time between a person's first date and their second date, their third date and their fourth date, their fifth/sixth, etc. Not every participant has the same number of dates.

Any help is much appreciated.

Thanks!


Accepted Solutions
Solution
‎09-16-2013 09:54 AM
Trusted Advisor
Posts: 1,931

Re: Comparing specific dates

Posted in reply to Walternate

If the dates are character strings, I would convert the date values to actual numbers, and display then with the MMYY. format.

Once that is done, you could compute the delta between two consecutive times via the LAG function and the INTCK function

data oink;

     set whatever;

     by id;

     prevdate=lag(date);

     if not first.id then delta=intck('month',date,prevdate);

run;

View solution in original post


All Replies
Solution
‎09-16-2013 09:54 AM
Trusted Advisor
Posts: 1,931

Re: Comparing specific dates

Posted in reply to Walternate

If the dates are character strings, I would convert the date values to actual numbers, and display then with the MMYY. format.

Once that is done, you could compute the delta between two consecutive times via the LAG function and the INTCK function

data oink;

     set whatever;

     by id;

     prevdate=lag(date);

     if not first.id then delta=intck('month',date,prevdate);

run;

🔒 This topic is solved and locked.

Need further help from the community? Please ask a new question.

Discussion stats
  • 1 reply
  • 163 views
  • 0 likes
  • 2 in conversation