If you have a list of numbers, the statistical rank tells you the order of a value in that list.
The rank is therefore calculated by arranging the numbers in a specified order (usually descending) and then assigning a position to each value in the list.
For example, for the list 6, 4, 2, the rank of each number is:
6 | - | rank = 1 |
4 | - | rank = 2 |
2 | - | rank = 3 |
The Excel RANK.AVG function returns the statistical rank of a given value, within a supplied array of values. If there are duplicate values in the list, the average rank is returned.
The Rank.Avg function is new in Excel 2010, and so is not available in earlier versions of Excel.
The syntax of the function is:
Where the function arguments are:
number | - | The value for which you want to find the rank. | ||||||
ref | - | An array of values containing the supplied number. | ||||||
[order] | - |
An optional argument that defines whether the supplied ref array should be ordered in ascending or descending order. The [order] argument can have the value 0 or 1, meaning:
|
The Rank.Eq and Rank.Avg functions are both new to Excel 2010. The difference between these two functions occurs when there are duplicates in the list of values. The Rank.Eq function returns the lower rank, whereas the Rank.Avg function returns the average rank.
For example, in the list of values 4, 5, 5, 6 (in ascending order), the value '5' occupies the 2nd and 3rd positions. Therefore, when calculating the rank of the value 5:
Both the Rank.Eq and the Rank.Avg function return a rank of 4 for the value 6.
The following spreadsheet shows four examples of the Excel Rank.Avg Function, used to calculate the rank of values within the array {1, 11, 6, 9, 2, 5, 9}.
Formulas:
|
Results:
|
Note that, in the above examples:
For further details and examples of the Excel Rank.Avg function, see the Microsoft Office website.
If you get an error from the Excel Rank.Avg function this is likely to be the #N/A error:
#N/A | - |
Occurs if the supplied number is not present within the supplied ref. (Note that the Rank.Avg function does not recognise text representations of numbers as numeric values, so you will also get the #N/A error if the values in the supplied ref array are text values). |