帮忙改个matlab的程序

学习 时间:2026-04-02 08:41:00 阅读:3396
帮忙改个matlab的程序a=ones(8);a(1,2)=3;a(1,3)=4;a(1,4)=5;a(1,5)=6;a(1,6)=7;a(1,7)=8;a(1,8)=9;a(2,3)=3;a(2,4)=4;a(2,5)=5;a(2,6)=6;a(2,7)=7;a(2,8)=8;a(3,4)=3;a(3,5)=4;a(3,6)=5;a(3,7)=6;a(3,8)=7;a(4,5)=3;a(4,6)=4;a(4,7)=5;a(4,8)=6;a(5,6)=3;a(5,7)=4;a(5,8)=5;a(6,7)=3;a(6,8)=4;a(7,8)=3;for j=1:8c(j)=sum(a(:,j))/40;%求均值z(j)=var(a(:,j));%求方差endfor j=1:8for i=1:40x(i,j)=(a(i,j)-c(j))/sqrt(z(j));end endf=cov(x);[v,d]=eig(f);h=0;g=0;for m=1:8g=g+d(m,m);endfor n=1:8if d(n,n)>1h=h+d(n,n);endendk=h/g;F1=x*v(:,8);F2=x*v(:,7);F=d(8,8)/(d(8,8)+d(7,7))*F1+d(7,7)/(d(8,8)+d(7,7))*F2;[y,q]=sort(F,'descend');y'q'Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Warning:Divide by zero.Index exceeds matrix dimensions.

最佳回答

有魅力的大地

迷路的月光

2026-04-02 08:41:00

for i=1:40 x(i,j)=(a(i,j)-c(j))/sqrt(z(j));end 你的i没有40个啊 而且你的z(1,:)=0

最新回答共有2条回答

  • 迷人的洋葱
    回复
    2026-04-02 08:41:00

    for i=1:40 x(i,j)=(a(i,j)-c(j))/sqrt(z(j));end 你的i没有40个啊 而且你的z(1,:)=0

上一篇 Jeet Kune Do is a type of kung fu,which was-----bu Bruce Lee

下一篇 中国第一所近代新式学堂是什么?