dbhole.mat contains 334 files and each file contains data of[2xn]. I want that how many 'h'(i.e h1,h2 etc) are in each 'd' (i.e d1,d2, etc)

1 view (last 30 days)
for example, for d1, it has total 20h(d1h1,d1h2...d1h20). how to index out all the'h'in d1,d2...d14

Answers (2)

Andrei Bobrov
Andrei Bobrov on 1 Jul 2016
Edited: Andrei Bobrov on 1 Jul 2016
clear
load dbhole
a = whos;
n0 = {a.name}';
x = regexp(n0,'\d*','match');
x = x(~cellfun(@isempty,x));
x = cat(1,x{:});
z = sortrows(str2double(x));
[aa,~,c] = unique(z(:,1));
out = [aa, accumarray(c,1)];

Stalin Samuel
Stalin Samuel on 30 Jun 2016
Below approach may solve your problem
load dbhole
nfile = struct2cell(whos)
ret = nfile(1,1:end)
Refer regexp which will be useful for you

Community Treasure Hunt

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

Start Hunting!