Word counting in a loop

2 views (last 30 days)
Xymbu
Xymbu on 9 Feb 2021
Answered: Gaurav Garg on 12 Feb 2021
I have a while loop running where I bring in a sentence on every loop
Sentence(i) = ('some string of words');
I can split the words and count using the unique() function but...
I want to keep adding to a table that contains each unique word and the number of times it repeats
so it looks like...
while
Sentence(i) = ('some string of words that changes each iteration');
Words = splitlines(Sentence(i))
PL = (Words== "");
Words(PL) = [];
AnalysisWords = strings(0);
for i = 1:length(Words)
AnalysisWords = [AnalysisWords ; split(Words(i))];
end
AnalysisWords = lower(AnalysisWords);
[words,N,idx] = unique(AnalysisWords);
end
Im not sure how to turn this into a running list
  1 Comment
KSSV
KSSV on 9 Feb 2021
Use unique and histcI to count the number of times the string repeated.

Sign in to comment.

Accepted Answer

Gaurav Garg
Gaurav Garg on 12 Feb 2021
Hi,
You can look at the answer here where unique and hist functions have been used.
Rather than using hist function, you can use a map container, where words are stored as keys and thei number of occurences is stored as values.

More Answers (0)

Categories

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

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!