@CathyVI wrote:
@PaigeMiller @ballardw Thank you for sharing your knowledge. This means alot to me as I continue to learn SAS. Two last question please.
1. How do I learn data manipulation? Is there any book/material you can recommend.
The first step in anything related to programming, at least in my sometimes humble opinion: Clearly define the manipulation.
I often find that when I don't get desired or expected results from code it is because I did not state clearly enough what the output would be and identify which step handles which requirement.
Let's look at your second question about the column headings.
When you looked @PaigeMiller's Column statement did you consider how the text "Active" is placed about the count and percent? or "Reserve"?
Let's see this:
proc report data=test2; columns serv table ("Component" ("Active" active active_pct) ("Reserve" reserve reserve_pct)); define serv/group "Serv"; define table/group "Table"; define active/'N' format=comma10.0; define active_pct/'%' format=percent8.2; define reserve/'N' format=comma10.0; define reserve_pct/'%' format=percent8.2; run;
The ( ) on the Columns statement does column heading grouping. Adding an extra layer of () around the Active and Reserve groups places the text Component above those groups.
The appearance was about COLUMN HEADING, not grouping by defines.
@CathyVI wrote:
1. How do I learn data manipulation? Is there any book/material you can recommend.
Also, Maxims of Maximally Efficient SAS Programmers
Especially maxims 10, 12, 14 and 19, and all the rest are important too.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
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.