计算平均值和方差,虹膜数据集

27次浏览(过去30天)
玛丽keshtkar
玛丽keshtkar 2022年11月6日
评论道: 凯文·霍利 2022年11月6日
我想计算虹膜数据集的均值方差(对于第一个物种)。我怎样才能清理我的代码!让它变成两个for循环(一个循环表示均值,一个循环表示方差?
负载fisheriris
一个=量(1:50,1:结束);
a1 = (1:50, 1);
a2 = (1:50, 2);
a3 = (1:50, 3);
a4 = (1:50, 4);
s1 = 0;
我= 1:50;
s1 = s1 + a1(我);
结束
mean1 = s1/50
s2 = 0;
j = 1:50;
s2 = s2 + a2 (j);
结束
非常刻薄的= s2/50
s3 = 0;
k = 1:50;
s3 = s3 + a3 (k);
结束
mean3 = s3/50
s4 = 0;
l = 1:50;
s4 = s4 + a4 (l);
结束
mean4 = s4/50
意味着= [mean1,非常刻薄,mean3 mean4]
v1 = 0;
p = 1:50;
v1 = v1 + (a1 (p) -mean1) ^ 2;
结束
var1 = v1/49
v2 = 0;
o = 1:50;
v2 = v2 + (a2 (o)非常刻薄)^ 2;
结束
var2 = v2/49
v3 = 0;
u = 1:50;
v3 = v3 + (a3 (u) -mean3) ^ 2;
结束
var3 = v3/49
v4 = 0;
t = 1:50;
v4 = v4 + (a4 (t) -mean4) ^ 2;
结束
var4 = v4/49
Totalvar =[var1 var2 var3 var4]

接受的答案

凯文·霍利
凯文·霍利 2022年11月6日
你为什么不使用均值和var函数?
负载fisheriris
一个=量(1:50,1:结束);
平均数=平均数(a)
意味着= 1×4
5.0060 3.4280 1.4620 0.2460
Totalvar = var(a)
totalvar = 1×4
0.1242 0.1437 0.0302 0.0111
3评论
凯文·霍利
凯文·霍利 2022年11月6日
另外,如果允许使用sum函数:
负载fisheriris
一个=量(1:50,1:结束);
平均数= sum(a(1:50,:))/50
意味着= 1×4
5.0060 3.4280 1.4620 0.2460
Totalvar = sum((a(1:50,:)-means).^2)/49
totalvar = 1×4
0.1242 0.1437 0.0302 0.0111

登录评论。

更多答案(0)

世界杯预选赛小组名单社区寻宝

在MATLAB Central中寻找宝藏,并了解社区如何帮助您!世界杯预选赛小组名单

开始狩猎!

Baidu
map