Clear Filters
Clear Filters

How to extract multiple matches into separate rows?

3 views (last 30 days)
I have a CSV file (see attached), from the file i want to extract values in the column M (Cab/100kg=f) related to each group (x, y, z) and then plot the plot the frequency of column f against the value in f, related to each group and predict lognormal distribution. and then need to calculate variance. I appreciate if anybody can help with this.
Thanks in advance.

Answers (1)

Andrei Bobrov
Andrei Bobrov on 19 Jul 2017
Edited: Andrei Bobrov on 19 Jul 2017
T = readtable('test sheet.csv');
T_variance = varfun(@var,T(:,[1,end]),'G','Groups');
for plotted
For_plot = accumarray(findgroups(T.Groups),T{:,'Cab_100kg'},[],@(x){x});
y = [cellfun(@(x)(1:numel(x))',For_plot,'un',0),For_plot]';
plot(y{:});
  1 Comment
Nadeera Gunartna
Nadeera Gunartna on 19 Jul 2017
Many Thanks. first two lines gives the answer for variance. But before get the answer I have to check the data fit with lognormal distribution, if it only fits, then have to calculate. Thanks again.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!