if the cell duplicated put last column in the previous row
1 view (last 30 days)
Show older comments
Amr Hashem
on 12 May 2015
Commented: Walter Roberson
on 14 May 2015
i run this code but it gives an error:
j=1;
rowsize=length(defs);
data1=cell([rowsize,C2]); % create array with size [R,C]
for j=1:length(defs) % loop over Mdr of defib
querymdr=data2{j,1}; % save MDR numbers
y=alldata{:,1};
idx= find(y==querymdr); % find in alldata MDR equals def
record=[alldata{idx(1),:}]; % copy the 1st search result
for k=2:length(idx)% over all MDR number of text
record = [record,(alldata(idx(k),6))];
end
data1(j,:)=record; % put combined record into result table
end
what is the wrong thing ?
5 Comments
Walter Roberson
on 14 May 2015
What is class(y) and size(y) when the problem occurs?
Also your code does not account for the possibility of there being no match.
Accepted Answer
James Tursa
on 14 May 2015
Maybe idx is empty (i.e., the find didn't result in a match). Do this to verify:
dbstop if error
Then run your code. When the error occurs, the execution will pause and you can examine variable sizes to confirm the problem and why it occurred.
2 Comments
More Answers (0)
See Also
Categories
Find more on Debugging and Analysis 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!