如何用matlab批量求均值?有矩阵如下600000 3600000 4600000 4600000 3600000 4600000 3600000 4600000 3600000 4600004 3600004 3600004 3600004 3600004 3600004 3600004 4600005 5600005 4600005 4600005 5600005 4600005 4600005 5600005 4600005 46000
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 05:28:33
![如何用matlab批量求均值?有矩阵如下600000 3600000 4600000 4600000 3600000 4600000 3600000 4600000 3600000 4600004 3600004 3600004 3600004 3600004 3600004 3600004 4600005 5600005 4600005 4600005 5600005 4600005 4600005 5600005 4600005 46000](/uploads/image/z/4948477-61-7.jpg?t=%E5%A6%82%E4%BD%95%E7%94%A8matlab%E6%89%B9%E9%87%8F%E6%B1%82%E5%9D%87%E5%80%BC%3F%E6%9C%89%E7%9F%A9%E9%98%B5%E5%A6%82%E4%B8%8B600000+3600000+4600000+4600000+3600000+4600000+3600000+4600000+3600000+4600004+3600004+3600004+3600004+3600004+3600004+3600004+4600005+5600005+4600005+4600005+5600005+4600005+4600005+5600005+4600005+46000)
如何用matlab批量求均值?有矩阵如下600000 3600000 4600000 4600000 3600000 4600000 3600000 4600000 3600000 4600004 3600004 3600004 3600004 3600004 3600004 3600004 4600005 5600005 4600005 4600005 5600005 4600005 4600005 5600005 4600005 46000
如何用matlab批量求均值?
有矩阵如下
600000 3
600000 4
600000 4
600000 3
600000 4
600000 3
600000 4
600000 3
600000 4
600004 3
600004 3
600004 3
600004 3
600004 3
600004 3
600004 4
600005 5
600005 4
600005 4
600005 5
600005 4
600005 4
600005 5
600005 4
600005 4
600005 4
600005 5
600005 4
600005 5
600005 4
600005 5
600006 3
600006 3
600006 3
600006 3
600006 3
600006 3
600006 3
600006 3
600006 3
我想要求第一列序号相同对应的第二列的数值的平均值,如第一列中序列号都是600000对应的第二列的平均值,第一列中序列号都是600004对应的第二列的平均值...依次类推,最终得到一个平均值数列.
由于这个矩阵很大(上面只是给出大矩阵的一部分),无法手工一个个算,
如何用matlab批量求均值?有矩阵如下600000 3600000 4600000 4600000 3600000 4600000 3600000 4600000 3600000 4600004 3600004 3600004 3600004 3600004 3600004 3600004 4600005 5600005 4600005 4600005 5600005 4600005 4600005 5600005 4600005 46000
假设你的数据矩阵为a.
%按第一列排序,若已经排好可省略这两行
[b,pos]=sort(a(:,1));
a=a(pos,:);
A=a(:,1);
B=a(:,2);
[C,ia,ic]=unique(A);
ia=[ia;length(A)+1];
for i=1:length(C)
avg(i)=mean(B(ia(i):(ia(i+1)-1)));
end
一维数组avg即为要求的平均值,对应的序列号是C