add to values in a varying size cell array

1 回表示 (過去 30 日間)
Austin Sowers
Austin Sowers 2019 年 5 月 1 日
コメント済み: Austin Sowers 2019 年 5 月 1 日
I would like to add 15 to the values in CB that match up with the -10s in CA. (i.e. 17, 4, and 7)
CA = {[-10 2],[6 6 8],[0 9 -10 8 -10]};
CB = {[17 2],[6 6 10],[9 3 4 9 7]};
idx = cellfun(@(x)any(x(:)==-10),CA) & not(cellfun(@(x)any(x(:)==-10),CB)); % Not sure if I am on the right track with this.

回答 (1 件)

KSSV
KSSV 2019 年 5 月 1 日
CA = {[-10 2],[6 6 8],[0 9 -10 8 -10]};
CB = {[17 2],[6 6 10],[9 3 4 9 7]};
for i = 1:length(CA)
idx = CA{i}==-10 ;
CB{i}(idx) = CB{i}(idx)+15 ;
end
  3 件のコメント
KSSV
KSSV 2019 年 5 月 1 日
My day is confused......:(
Austin Sowers
Austin Sowers 2019 年 5 月 1 日
Ok. Sorry about that. Basically, how do I add CC's [1 2 4] ****(4 minus 1)**** to CB's [4 17 2].

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCell Arrays についてさらに検索

製品


リリース

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by