I have
B=[1,1;2,2;3,40;4,10;5,15;6,19;7,22];
c={[1,10,15],[15,19,22],[1,2,40]};
Matrix B shows that 4 is correspond to10 or 7 correspond to 22 or 3 correspond to 40 .
So I want to change c according to second column of B
result should be
c_new={[1,4,5],[5,6,7],[1,2,3]};

 採用された回答

Akira Agata
Akira Agata 2019 年 10 月 2 日

0 投票

Solution 1:
c_new = cell(size(c));
for kk = 1:numel(c)
c_new{kk} = interp1(B(:,2),B(:,1),c{kk});
end
Solution 2:
% "Solution 1" in 1 line
c_new = cellfun(@(x) interp1(B(:,2),B(:,1),x),c,'UniformOutput',false);

その他の回答 (0 件)

カテゴリ

質問済み:

NA
2019 年 10 月 2 日

回答済み:

2019 年 10 月 2 日

Community Treasure Hunt

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

Start Hunting!

Translated by