BookmarkSubscribeRSS Feed
Obsidian | Level 7

Hi All


I am working on analyzing a survey data with pre post questionnaire. I looked around and found that such data is analyzed by wilcoxon signed rank test, but If I also want to see difference between the two groups for such data, I am not sure this test is best way or not.


To be more concise, I have data from a study in which stress reduction was carried through two way (meditation and OMM) and we have data from pre and post survey on likert scale and I want to see which method worked better in stress reduction ??


I am just wondering that If we take difference in scores on pre and post in both groups and then run wilcoxon signed sign rank test on those differences, will that be appropriate statistic.


Your time and efforts are greatly appreciated.



Super User

My references show that using Wilcoxon Signed Ranks the differences should be an interval value (the difference actually has numeric meaning). Likert scales may not actually give you that as using something like a "rate 1 to 5 on xx" the difference between a before/after 2 and 1 may not mean the samething as a 5 and 4 even though the difference has the same value.


But you should be able to use a simple sign test on the differences.


Assuming your data set was named Score and the difference value was ScoreChange:

ods select BasicMeasures TestsForLocation;
proc univariate data=Score;
   var ScoreChange;

You'll actually get 3 results, a T-test, signed rank and sign test. With Likert scales I'm conservative and would look to the Sign test result as a start.


Rhodochrosite | Level 12

The sign test is about the only way to analyse interval scaled data in a pre-post framework.  It is low power, so you'll need a big effect to see anything.  If the Likert scaled items are part of a validated instrument, you will be better off using the scored instrument and (usually) treating it parametrically.

Obsidian | Level 7

Thanks so much, But I have one more question. So In my case I will have to take differences twice, one post-pre and then the differences of (post-pre) for  the two groups but I have uneven group sizes, one has 18 and other has 16 obs? What would be an ideal way to handle such issue, should I throw two participants out form the 18 group??

Super User

The between groups analysis you would be looking at a two sample method. With what little I know of your data I might start with CMH options in proc freq and general chi-squares.


But your sample is pretty small and if you had any notable number of "differences" that go in the "worse" direction you potentially have a range of responses of -4 to 4 (assuming a 5 point scale valued at 1-5) which could lead to many empty cells and reliability issues.

Super User
Some thought:

1) proc freq 's trend analysis and Friedman Analysis

Obsidian | Level 7

I am fairly new to survey analysis with multiple items. So I am trying to evaluate which of the two methods worked better in stress reduction from a survey taken at pre and post intervention with 5 questions each on likert scale. I got to know that I need to cehck the internal consistency of the scale first. So I run proc corr with alpha option in sas and got poor consistency at pre and post both. Post is still better at .60 (removing one question form the post goes to .71), while pre is .44(removing one of the question it goes up to max .50). But that question (to be removed) is different in pre and post . I also took the diffeernce in pre and post and calculated alpha on that and it turned out to be .62. Can I still use this survey to answer my question?

Super User

Which type of correlation were you running? Response to Pre "question A" with Post "question A" or  pre/post difference question A with pre/post difference of question B?


If you look at the pre and post values for the same questions correlation may not be very helpful. Here is an example why:

data junk;
   Do Pre = 1 to 3;
      do mult = 1 to 3;
         do post = (pre+1) to 5;
   drop mult;

proc corr data=junk;run;

proc freq data=junk;
   tables pre*post/list nocum nopercent;

This is an artificial data set. In every case the Post value is greater than the Pre value. The Pearson correlation is about .4 but the data


is made to show 100 percent improvement or decline (depending on interpretation) because the Intervals 1 to 2 and 1 to 5 differ.



Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

Get the $99 certification deal.jpg



Back in the Classroom!

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

View all other training opportunities.

Discussion stats
  • 7 replies
  • 4 in conversation