MATLAB: If statement in cell arrays

cellif statement

Hi,
I have a matrix A of 1×24 cells. Each cell contains c x 1 values, with c being variable. So A{1} is 2360×1, while A{2} is 2340×1 etc. The values in A define ages of people.
I have a matrix B 45×2, 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 1×24 cells, with all corresponding values to the specific ages in A.
Can anyone help me with this?

Best Answer

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.