find most frequent characters in a string

2 views (last 30 days)
I have a string and I want to find the most frequent characters that appear in it. Is there anyway to do this with matlab?

Accepted Answer

Walter Roberson
Walter Roberson on 13 Dec 2011
mode()
  3 Comments
Walter Roberson
Walter Roberson on 13 Dec 2011
David's code is fine. It could also be written more concisely as
char(mode(0+str))

Sign in to comment.

More Answers (1)

David Young
David Young on 13 Dec 2011
One way to get the commonest n characters, in descending order of frequency:
>> str = 'hello world';
>> n = 5; % number of characters to report
>> [~, c] = sort(hist(double(str), 0:255), 'descend');
>> f = char(c(1:n)-1)
f =
lo de
There may well be numerous better ways.

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!