I am working with a transaction type data set where there are multiple observations for individual children nested within families. Each child has a unique" child_id" and an associated "familynumber." I would like to generate a count of the number of children in each family. I have attempted to use the following code, but I am receiving an error that informs me that there are different data types in the WHERE clause. Thank you for your help.
proc sql noprint;
select left(put(count(distinct(familynumber)),15.0)) into :fmcount work.time;
select distinct(familynumber) into :family1 - :family&fmcount from work.time;
quit;
%macro family_count;
%do i = 1 %to &fmcount;
proc sql noprint;
select count(distinct(child_id)) from work.time
where familynumber = "&&family&i";
quit;
%end;
%mend family_count;
%family_count;
Is the familynumber column numeric? If so: where familynumber = &&family&i;
Is the familynumber column numeric? If so: where familynumber = &&family&i;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.