BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
lisahoward
Calcite | Level 5

I would like to change the following to statement to check for months rather than days:

datdif(index_date,treated_date,'act/act')

What would I need to change so that  datdiff can back in months between the diagnosis and Index date rather than days.

Many thanks.

1 ACCEPTED SOLUTION

Accepted Solutions
RichardinOz
Quartz | Level 8

@RW9

Not sure why "you would need to check if yearpart different from yearpart other date first".  INTCK() handles full SAS dates.

@lisahoward

INTCK('MONTH', index_date,treated_date, 'SAME')

The SAME alignment counts each month from the same day as the day of the start month

Richard

View solution in original post

3 REPLIES 3
RW9
Diamond | Level 26 RW9
Diamond | Level 26

Hi,

Have a look at the INTCK function as this does all the different intervals - QTR, YEAR, MONTHS etc.

Just to note, you would need to check if yearpart different from yearpart other date first.

RichardinOz
Quartz | Level 8

@RW9

Not sure why "you would need to check if yearpart different from yearpart other date first".  INTCK() handles full SAS dates.

@lisahoward

INTCK('MONTH', index_date,treated_date, 'SAME')

The SAME alignment counts each month from the same day as the day of the start month

Richard

lisahoward
Calcite | Level 5

Thank you All.

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 2755 views
  • 0 likes
  • 3 in conversation