Hello Everyone,
I have a dataset below showing variables country, salestype and number of sales.
| Country | salestype | sales |
| Europe | car | 10 |
| Europe | bike | 20 |
| Europe | truck | 30 |
| Europe | bike | 12 |
| Europe | car | 20 |
| Europe | bike | 25 |
| Europe | truck | 13 |
| Europe | truck | 32 |
| Europe | bike | 42 |
| Europe | car | 52 |
| UK | car | 32 |
| UK | bike | 45 |
| UK | truck | 85 |
| UK | car | 25 |
| UK | car | 30 |
| US | bike | 56 |
| US | bike | 16 |
| US | car | 13 |
| Australia | car | 85 |
| Australia | bike | 63 |
| Australia | truck | 78 |
| Australia | car | 95 |
| Australia | bike | 45 |
| Australia | truck | 25 |
| Asia | car | 62 |
| Asia | truck | 35 |
| Asia | bike | 15 |
| Africa | car | 29 |
| Africa | car | 36 |
| Africa | bike | 78 |
| Africa | bike | 95 |
| Africa | car | 45 |
I want the output such that it sums up the sales for each salestype and country and produces a table like below.
| car sales | bike sales | truck sales | Total sales | |
| Europe | 82 | 99 | 75 | 256 |
| UK | 87 | 45 | 85 | 217 |
| US | 13 | 72 | 85 | |
| Australia | 180 | 108 | 103 | 391 |
| Asia | 62 | 15 | 35 | 112 |
| Africa | 110 | 173 | 283 | |
| Total sales | 534 | 512 | 298 | 1344 |
Could you please guide me to code this. I tried using proc sql but it did not work the way I wanted.
Here's one way to create a report with the right structure. You can always learn more about PROC TABULATE if you want a fancier report:
proc tabulate data=have;
class country salestype;
var sales;
tables country all, (salestype all) * sales=' ' * sum=' ';
run;
Here's one way to create a report with the right structure. You can always learn more about PROC TABULATE if you want a fancier report:
proc tabulate data=have;
class country salestype;
var sales;
tables country all, (salestype all) * sales=' ' * sum=' ';
run;
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!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.