我很困惑Matlab如何返回数组的大小。看看这个:
a = zeros(2,100,10);
b = a(1,:,:);
size(b)
ans =
1 100 10
我相信答案应该是
100 10
有没有一种简单的方法来解决这个问题?
答案 0 :(得分:5)
Matlab只删除拖尾单例尺寸,否则(1,:,:)将是2D和(1:2,:,:) 3D,这可能会非常混乱。
尝试squeeze,它会删除所有单例维度。
a = zeros(2,100,10);
b = squeeze(a(1,:,:));
size(b)
ans =
100 10