DATA Step, Macro, Functions and more

Percentile using mean

Accepted Solution Solved
Reply
Contributor
Posts: 33
Accepted Solution

Percentile using mean

Hi,

I have values (1 to 300) in a column i want to find the mean and std of 33.33rd percentile for that values.

How do i solve that. please help me!...

 

 

 

 

 

 


Accepted Solutions
Solution
a month ago
Trusted Advisor
Posts: 1,259

Re: Percentile using mean

Posted in reply to Sathish_jammy

Hi @Sathish_jammy,

 

Now you've started a second thread for essentially the same question -- not ideal.

 

I would probably let PROC RANK identify the percentiles (i.e. tertiles) and then use PROC SUMMARY to calculate the descriptive statistics for each of the three groups. Using your data from the other thread as dataset HAVE:

 

proc rank data=have out=want groups=3;
var weight;
ranks tertile;
run;

proc summary data=want nway;
class tertile;
var weight follw1_weight;
output out=stats mean= std= / autoname;
run;

View solution in original post


All Replies
Super User
Super User
Posts: 9,599

Re: Percentile using mean

Posted in reply to Sathish_jammy

Result 1 on google search seems to have the answer:

https://blogs.sas.com/content/iml/2013/10/23/percentiles-in-a-tabular-format.html

 

For non-standard percentiles use stdzise.

Solution
a month ago
Trusted Advisor
Posts: 1,259

Re: Percentile using mean

Posted in reply to Sathish_jammy

Hi @Sathish_jammy,

 

Now you've started a second thread for essentially the same question -- not ideal.

 

I would probably let PROC RANK identify the percentiles (i.e. tertiles) and then use PROC SUMMARY to calculate the descriptive statistics for each of the three groups. Using your data from the other thread as dataset HAVE:

 

proc rank data=have out=want groups=3;
var weight;
ranks tertile;
run;

proc summary data=want nway;
class tertile;
var weight follw1_weight;
output out=stats mean= std= / autoname;
run;
Contributor
Posts: 33

Re: Percentile using mean

[ Edited ]
Posted in reply to FreelanceReinhard

Thank u so much! it works well...

 

But how do i get the mean difference & STD difference  ,as well p-value for each 3 tertiles.

Could u please help me again.

 

Trusted Advisor
Posts: 1,259

Re: Percentile using mean

[ Edited ]
Posted in reply to Sathish_jammy

Well, a p-value is always associated with a statistical hypothesis test. So, you'd have to specify this test. As a start, let's assume that you want what is probably the most common choice in the situation you described in the other thread: the two-sided t-test for paired samples. But you should double-check your requirements.

 

The corresponding SAS procedure, PROC TTEST (with the PAIRED statement), does not only compute "the" p-values, but also the requested summary statistics. Continuing with dataset WANT from my first reply in this thread:

 

proc sort data=want;
by tertile;
run;

ods select none;
ods output ttests=ttest
           statistics=tstats;
proc ttest data=want;
by tertile;
paired weight*follw1_weight;
run;
ods select all;

data want2;
merge tstats(keep=tertile mean stddev)
      ttest(keep=tertile probt rename=(probt=p_value));
by tertile;
run;

 

Contributor
Posts: 33

Re: Percentile using mean

Posted in reply to FreelanceReinhard

You are really awesome!... @FreelanceReinhard

Thank you so much...

 

 

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 5 replies
  • 151 views
  • 2 likes
  • 3 in conversation