BookmarkSubscribeRSS Feed
SherriF
Obsidian | Level 7

Hi,

 

I am using X=PCTL(I,variable1, variable2, variable3....) function to calculate percentiles, but I want to calculate percnetiles among 600 variables. 

 

is there anyway that i can simpelize the expression instead of listing every variable in the bracket?? That would be crazy!

 

Thanks,

Sherri 

 

5 REPLIES 5
Reeza
Super User
Do the variables have a naming convention? Are they all side by side?

You could transpose the data and use BY processing as well.
SherriF
Obsidian | Level 7
Thank you for you response.
The variables' name look like this: load_2004,load_2005,load_2006,load_2007,load_2008,load_2009, l3r1-l3r100,l4r1-l4r100,l5r1-l5r100,l6r1-l6r100;
I can probably do transpose process, but i am not familiar with that and it will easily mess up my data set. I am still wondering if this can be solved with PCTL function.
SherriF
Obsidian | Level 7

Thank you for you response.
The variables' name look like this: load_2004,load_2005,load_2006,load_2007,load_2008,load_2009, l3r1-l3r100,l4r1-l4r100,l5r1-l5r100,l6r1-l6r100;
I can probably do transpose process, but i am not familiar with that and it will easily mess up my data set. I am still wondering if this can be solved with PCTL function.

Reeza
Super User
Variable lists are what you're looking for:
https://support.sas.com/documentation/cdl/en/lrcon/62955/HTML/default/viewer.htm#a000695105.htm

Why do you think transpose would mess up your dataset?
SherriF
Obsidian | Level 7

Thank you for your link. It is helpful.

 

After I tried several list methods, It turnes out the function can be written as x=PCTL(i, of variable:) and it worked.

 

The reason I dont prefer transpose process is because I am personally not familiar with it, and the data I am manipulating is very complicated alrealy for me, so in order to keep my logic clear for myself, I prefer this PCTL function.

 

Thank you for your help again!

 

 

 

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

How to Concatenate Values

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 5 replies
  • 1856 views
  • 0 likes
  • 2 in conversation