大神所谓的在matlab中比如sum函数怎会出现维数为N?
发布网友
发布时间:2022-04-30 13:45
我来回答
共1个回答
热心网友
时间:2022-06-22 18:39
clear
clc
A=[1 4 7;2 5 8;3 6 9];
A(:,:,2)=[10 13 16;11 14 17;12 15 18]
A(:)' %% 把A展开成行向量,可以发现,矩阵中数据的存储顺序是先列,再行,最后是层。
sum(A,1) %所以第一维的和是列数据之和
sum(A,2) %所以第二维的和是行数据之和
sum(A,3) %所以第三维的和是层对应数据之和追问其实发问不久想起了线代的相关知识,算是恍然大悟了,然后谢谢你的回答!顺便问一下就是sum(A,3)怎么计算?脑子想不清怎么回事,所以对matlab中对应位置相加表示不敢贸然接受。如果是sum(A,4)呢?按理说是存在这种算法的,请问又是什么呢?
追答就像两个摞在一起的表格,sum(A,3)就是上下两层的重叠处,对应相加,变成一张表格纸。
A=reshape((1:9)'*ones(9,1),3,3,3,[])%4维数组
sum(A,4)
sum(A ,4),就如同将两栋楼重合在一起,分别将每间屋里的人数对应相加,变成一栋楼。