Hello,
DATA A.IP_Bene;
SET "/sas/raw4/WD1/ccaei121.sas7bdat";
ARRAY ICD {15} DX1-DX15;
DO i = 1 to 15;
IF ICD {i} in ("45341", "45340", "45342", "45350", "45351", "45352", "45181", "45111", "45119", "41511", "41512", "41513", "41519") THEN DO;
OUTPUT;
LEAVE;
END;
END;
RUN;
Above SAS code creates a dataset whos row have any of these strings ("45341", "45340", "45342", "45350", "45351", "45352", "45181", "45111", "45119", "41511", "41512", "41513", "41519") across 15 columns in the dataset.
How can I modify this code so that I can get count(No.of times the value appeared in the 15 columns) as following:
Description Count
45341 X
45340 Y
45342 Z
and so on....
Thanks
--Sujith
Do you want the overall counts for the file OR separately for each record?
Art, CEO, AnalystFinder.com
Overall Counts in the file.
Thanks
The following modification of your current code would do what you want:
DATA for_count (keep=_icd rename=(_icd=icd));
SET ccaei121;
ARRAY ICD {15} DX1-DX15;
DO i = 1 to 15;
IF ICD {i} in ("45341", "45340", "45342", "45350", "45351", "45352", "45181", "45111", "45119", "41511", "41512", "41513", "41519") THEN DO;
_icd=icd(i);
OUTPUT;
END;
END;
RUN;
proc freq data=for_count;
tables icd;
run;
Art, CEO, AnalystFinder.com
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.