Problem with the mean of index
2 次查看(过去 30 天)
显示 更早的评论
% tr(i,j,ni) is 361*361*432
t_r = zeros(361,361,35);
ind=10:16;
for t=1:(ni/12)-1;
if t<=34
* *mean_tr* = mean(tr(i,j,ind));*
t_r(i,j,t) = mean_tr;
ind = ind + 12;
else
end
end
mean_winter_sid = mean(t_r,3);
4 个评论
Star Strider
2016-3-30
Could it possibly be that:
mean(tr(i,j,ind))
are zero?
For example:
q = mean([-3:3])
q =
0.0000e+000
采纳的回答
Azzi Abdelmalek
2016-3-30
You can calculate the mean without a for loop
A=rand(361,361,432);
mina=mean(A(:)) % the mean off all the matrix
min1=mean(A,1); % dimension 1
min2=mean(A,2); % dimension 2
min3=mean(A,3); % dimension 3
4 个评论
更多回答(1 个)
Chad Greene
2016-3-30
Do the values of indices i and j ever change?
Can you describe in words what you are trying to do? I have a feeling it can be done much more simply and efficiently without loops.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!