Need top 5 most frequent (non-numeric) values

yobroham

New Member
Joined
Nov 14, 2014
Messages
1
I am trying to create a top 5 list of the most frequent values from a range. I know how to use the MODE function to get the most frequent number in a range, but I want to find the most frequent text...as well as get the next 4 most frequent. For example...

My range would be a1:a16 and I need a formula to place into d2 for the most frequent non-numerical value in the range, d3 for the second most frequent and so on...


ANY help would be greatly appreciated, excel newbie here :)
 

Excel Facts

What does custom number format of ;;; mean?
Three semi-colons will hide the value in the cell. Although most people use white font instead.
You could copy the values to another column, use Remove Duplicates to get a unique list, and then use a COUNTIF formula to count the occurrences of each.
 
Upvote 0
I am trying to create a top 5 list of the most frequent values from a range. I know how to use the MODE function to get the most frequent number in a range, but I want to find the most frequent text...as well as get the next 4 most frequent. For example...

My range would be a1:a16 and I need a formula to place into d2 for the most frequent non-numerical value in the range, d3 for the second most frequent and so on...


ANY help would be greatly appreciated, excel newbie here :)

Fred
5
MOST FREQ
FREQ
Ralph
2
Fred
4
George
5
George
3
Susan
Susan
3
Tom
Tom
2
Jeff
Jeff
2
Fred
Tom
Susan
Fred
George
Susan
Fred
Jeff
George
Carol

<TBODY>
</TBODY>

C1: 5 (Top 5)

C2, control+shift+enter (CSE), not just enter:
Rich (BB code):
=LARGE(FREQUENCY(IF($A$1:$A$16<>"",MATCH($A$1:$A$16,$A$1:$A$16,0)),
  ROW($A$1:$A$16)-ROW($A$1)+1),C1)

C3, CSE:
Rich (BB code):
=SUM(IF(FREQUENCY(IF($A$1:$A$16<>"",MATCH($A$1:$A$16,$A$1:$A$16,0)),
  ROW($A$1:$A$16)-ROW($A$1)+1)>=C2,1))

D2, CSE and copy down:
Rich (BB code):
=IF($E2="","",INDEX($A$1:$A$16,SMALL(IF(FREQUENCY(IF($A$1:$A$16<>"",
  MATCH($A$1:$A$16,$A$1:$A$16,0)),ROW($A$1:$A$16)-ROW($A$1)+1)=$E2,
  ROW($A$1:$A$16)-ROW($A$1)+1),COUNTIF($E$2:E2,E2))))

E2, CSE and copy down:
Rich (BB code):
=IF(ROWS($E$2:E2)<=$C$3,LARGE(FREQUENCY(IF($A$1:$A$16<>"",
  MATCH($A$1:$A$16,$A$1:$A$16,0)),ROW($A$1:$A$16)-ROW($A$1)+1),
  ROWS($E$2:E2)),"")
 
Upvote 0

Forum statistics

Threads
1,216,028
Messages
6,128,392
Members
449,445
Latest member
JJFabEngineering

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top