Kindly check below code
data PKMERGE;
set PKDAR;
/*Derivation of age*/
age=intck('year',VSN1D, DOB1D, 'Continuous'); /*Check the age*/
run;
After running the above code, following log is appearing
NOTE: Character values have been converted to numeric values at the places given by: (Line):(Column). 732:18 732:25 NOTE: Invalid numeric data, VSN1D='18APR2006' , at line 732 column 18. NOTE: Invalid numeric data, DOB1D='08JUL1955' , at line 732 column 25.
Kindly assist in solving the problem
The message is quite clear.
Function INTK take numerical arguments (SAS dates) and you provide character arguments.
How was table PDKAR created?
Maybe you wrote
VSN1D='18APR2006';
instead of
VSN1D='18APR2006'd;
Note that to calculate age, this is arguable a better method:
AGE = floor(yrdif(DOB, today(), 'age'));
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.
Ready to level-up your skills? Choose your own adventure.