Statistical Procedures

Programming the statistical procedures from SAS
BookmarkSubscribeRSS Feed
reubendon
Calcite | Level 5

I have pilot data for paired non-parametric continuous variables, so I want to perform sample size calculation to detect differences using a wilcoxon signed rank test. Proc power has options for pairedmeans and twosamplewilcoxon (independent samples, NOT paired), but I can't find an option for paired non-parametric data. How do I go about doing this?  Is there a way to manipulate the pairedmeans or twosamplewilcoxon statements to accomplish sample size calculation for paired non-parametric data?

4 REPLIES 4
Season
Barite | Level 11

The POWER procedure only supports the calculation of sample size for a fraction of statistical methods available in SAS. You may search on the web for formula(e) of accomplishing your goal and compile SAS codes on your own or resort to R or PASS, the latter is a statistical software dedicated to sample size calculation.

FreelanceReinh
Jade | Level 19

Hello @reubendon,

 

In section 14.2 "One-Sample Location Problem" of the book 

Chow, S.C., Shao, J., and Wang, H. (2008): Sample Size Calculations in Clinical Research, 2nd ed.,
   Chapman & Hall/CRC Press/Taylor & Francis Group, New York

the authors derive an approximation formula using quantiles of the standard normal distribution for the sample size for a Wilcoxon signed rank test, given the significance level a, the desired power b and a series of quantities (probabilities) to be estimated based on data from pilot studies. I think this formula could be implemented in a moderately complicated DATA step reading the pilot study data. They note that their formula is valid only if there are no ties (i.e., paired differences with the same absolute value in the data of the planned study) and it would need to be modified otherwise (in a way not explained in the book).

Ksharp
Super User
An workaround way is subtracting these two variables and using DIFF to do one-way TTest (H0: mean=0 ). Like:

diff=after-before;
and using ONESAMPLEMEANS statement performs T test.
If you need non-parameter method, you could change DIFF into ordinal value and do ttest .
diff ordianl
-1.2 1
0 2
2.3 3
4.1 4
Season
Barite | Level 11

I beg to disagree on substituting t-test for Wilcoxon sum-of-rank test unless the differences follow a normal distribution. I guess that assumption is highly unlikely to be tenable for @reubendon's data because if that is the case, @reubendon does not need to resort to Wilcoxon sum-of-rank test and therefore raise the question here.

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 4 replies
  • 575 views
  • 2 likes
  • 4 in conversation