Matlab中的循环累加
发布网友
发布时间:2022-04-29 20:25
我来回答
共2个回答
热心网友
时间:2022-06-22 09:30
function newData=sumR(Data,R)
r=rem(size(Data,1),R);%看行数是否为R的整数倍,rem为取余命令
if r~=0
Data=[Data;zeros(R-r,size(Data,2))];%如果余数不为0,则给原矩阵补R-r行0元素。
end
[m n]=size(Data);%此时行数m为R的整数倍
newData=zeros(m/R,n);%创建一个新矩阵存放每R个元素的和
for i=1:n
for j=1:m/R
newData(j,i)=sum(Data(R*(j-1)+1:R*j,i));%求第i列每R个元素的和。
end
end
end
我大概编了下。应该就是这样的,我就懒得测试了。。。成功了的话你改改求行元素的。
热心网友
时间:2022-06-22 09:30
显然是无限循环!
几条命令语句即可搞定:
sum(data(1:7:end)) %周一的和
sum(data(2:7:end)) %周二的和
..................................
sum(data(7:7:end)) %周日的和