work with matrix of words and number

1 view (last 30 days)
Hey guys,
I work with matrix that have words on one column and their corresponding value on the other column as such
'Apple' 13.6000000000000
'Apple' 7.23200000000000
'Apple' 6.73600000000000
'Ball' 1.34900000000000
'Cat' 1.71600000000000
'Dog' 2.66100000000000
'Cat' 0.771000000000000
and the order of these words is random. I need to calculate the mean for individual words. I appretiate any help.
thanks

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 16 Aug 2019
T = readtable('txtfile.txt')
T_out = varfun(@mean,T,'GroupingVariables','Var1');

More Answers (1)

Walter Roberson
Walter Roberson on 15 Aug 2019
[unique_names, ~, idx] = unique(YourCell(:,1));
mean_per_word = accumarray(idx, cell2mat(YourCell(:,2)), [], @mean);
output = [unique_names, num2cell(mean_per_word)];

Community Treasure Hunt

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

Start Hunting!