Hi, I have a cell array (P) of size 5000x1. Each element of this cell array is another cell array of variable size which contains some words. The task is to find the words that are present in more than a certain number of elements (rows) of the array P. Thanks

1 Comment

What have you tried? If nothing, then why not? If you want help, show what you have done. Otherwise this becomes merely a doit4me.

Sign in to comment.

 Accepted Answer

Hint: You are not told which orientation the individual cell arrays are. You need to make them all the same orientation before you can get much further.
bar = cellfun(@(C) C(:), foo, 'uniform', 0);
Then you can pull all of the contents into a single array:
vertcat(bar{:})

3 Comments

I did this:
temp = cellfun(@unique, train,'UniformOutput',false);
all_words = vertcat(temp(:));
But the all_words is the same as temp and that's not what I wanted.
Notice I wrote vertcat(bar{:}) -- pay attention to brackets.
Thank you!

Sign in to comment.

More Answers (0)

Categories

Find more on Environment and Settings 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!