If statement in cell arrays
2 次查看(过去 30 天)
显示 更早的评论
Hi,
I have a matrix A of 1x24 cells. Each cell contains c x 1 values, with c being variable. So A{1} is 2360x1, while A{2} is 2340x1 etc. The values in A define ages of people.
I have a matrix B 45x2, B(:,1) are ages, B(:,2) are corresponding values to the specific age on the same row.
Now I want to check for each value in A, what is the corresponding value from B(:,2). So what I want as output is C with 1x24 cells, with all corresponding values to the specific ages in A.
Can anyone help me with this?
0 个评论
采纳的回答
Walter Roberson
2015-9-17
for K = 1 : length(A)
[tf, idx] = ismember(A{K}, B(:,1));
t = nan(length(A{K},1);
t(tf) = B(idx(tf),2);
C{K} = t;
end
You did not specify what to do for ages that did not match anything.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!