If you have asortedlist you can connect each value with an index. If there are equal values they should have equal indices (=ranks) too. Therefore you take the average of those ranks which belong to equal values. Thus it could happen that you have a rational number as rank (which is, at first sight, not very plausible)

Btw there is a slight mistake in your calculation. (see attachment)