Multiplication in cell arrays

3 views (last 30 days)
BN
BN on 12 Nov 2019
Answered: David Hill on 12 Nov 2019
Hey all, I have a cell (408*1), which has 408 rows of 33*33 array inside it. I attached this cell to this question (the name is precip(my_data).mat).
now I want to multiply a 408*1 double array to this cell. I attached this array too (the name numbers.mat).
so please help me to do multiply my file (numbers.mat) to my data (precip.mat). In the end I would like to have:
precip(my_data) * (numbers.mat) %each row multiplying to the same row from numbers
Thank you all in advance.

Accepted Answer

David Hill
David Hill on 12 Nov 2019
Or a simple loop.
for i=1:408
PRECTOTCORR{i}=PRECTOTCORR{i}*result(i);
end

More Answers (1)

Matt J
Matt J on 12 Nov 2019
Edited: Matt J on 12 Nov 2019
result = cat(3,precip{:}).*reshape(numbers,1,1,[]);
There seems little reason either for precip to be a cell array or to turn the result back into one. But if you must,
result=num2cell(result,[1,2]);

Categories

Find more on Multidimensional Arrays 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!