I have attempted various methods, but I have been unable to obtain the desired output.
Using do loops
I need output like following;
1
121
12321
1234321
123454321
Is the output one variable? Is it numeric or character? Maximum of 5 or how many rows? (Will severely limit whether the value is numeric or not
This makes a character value with that appearance.
data example; length var $ 25; do levels = 1 to 5; call missing(var); do j=1 to levels; var=cats(var,j); end; do j=(levels-1) to 1 by (-1); var=cats(var,j); end; output; end; drop levels j; run;
Please show us what you tried, so we can suggest ways to improve/correct your code.
Is the output one variable? Is it numeric or character? Maximum of 5 or how many rows? (Will severely limit whether the value is numeric or not
This makes a character value with that appearance.
data example; length var $ 25; do levels = 1 to 5; call missing(var); do j=1 to levels; var=cats(var,j); end; do j=(levels-1) to 1 by (-1); var=cats(var,j); end; output; end; drop levels j; run;
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.