" Array dimensions must match for binary array op."
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear experts,
I need your help;)
I got an Error :" Array dimensions must match for binary array op."
I have 1x14 cell ThAll : { 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double 4-D double}.
Each "4-D double" is a different size matrix . I need to find mean value matrix across all of these 4-D double matrices.
At first , I wanted to make all matrices in one ThAll cell array in the same size with NaN, then add all of them and find one mean value matrix across all matrices. I do it in next way:
for k = 1:length(ThAll) % Im not sure if Im making the same size for all matrices right; I think in this part is error
m = size(ThAll{k},1);
ThAll{k}(m+1, : , :, :) = NaN;
end
sum = ThAll{1}; % sum of all matrices
for i = 2:length(ThAll)
sum = sum + ThAll{i};
end
meanThAll = sum ./ length(ThAll); % one mean matrix across all matrices in cell array
Can someone help with this Error :" Array dimensions must match for binary array op" in my case ?
A lot thanks in advance!
2 commentaires
Walter Roberson
le 5 Juin 2020
Which MATLAB release are you using? In particular, are you using R2016b or later?
Réponses (1)
Sulaymon Eshkabilov
le 5 Juin 2020
Here is one of the easy solutions:
for jj=1:numel(ThAll)
TH_all=ThAll{jj};
for kk=1:4
TH_ALL(jj, kk)=mean2(TH_all(:,:,kk));
end
end
4 commentaires
Walter Roberson
le 6 Juin 2020
That does not make sense unless it happened before the code you posted.
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!