Here is the shape of my data
  • 7 attributes (size, colour, price, etc.) were ranked by people.
  • The data is arranged whereby if attribute “size” was ranked first then size=1. If size was ranked second then size=2. If colour was ranked fifth than colour=5, and so on.
  • So each case has 7 variables for ranking, each taking a value from 1 to 7
The problem
  • I want to remove two of the variables (say price and colour) from the ranking, and calculate mean rank per variable
  • Unless I recalculate ranks so that they are from 1 to 5, the mean rank will be biased.
  • But I can’t figure out a straightforward way to recalculate ranks so that they are from 1 to 5
What I’ve tried so far
I tried creating new variables called size5, shape5, and take the approach “replace size5 = 1 if size 5 > shape5” and so on with other 4 attributes with further ‘replace x if’. However, once I get to replace size5 = 2 then it quickly creates a “if” conditions of unmanageable number and complexity.

Surely there must a simple way to do this I just don’t know about?
Advice welcome!