java中vector.add()_Java AVector.add方法代码示例

import mikera.vectorz.AVector; //导入方法依赖的package包/类

private void calcResult() {

Vector u=Vector.createLength(n);

Vector w=Vector.createLength(m);

Vector t=Vector.createLength(n);

Vector t_old=Vector.createLength(n);

Vector q=Vector.createLength(p);

Vector pv=Vector.createLength(m);

// normalise X

for (int j=0; j

AVector col=X.getColumnView(j);

double mean=col.elementSum()/n;

col.add(-mean);

}

for (int i=0; i

// chose u as column in X with highest sum of squares

u.set(X.getColumn(selectMaxSSColumn(X)));

int maxIterations=10;

int iterations=0;

while (iterations++<=maxIterations) {

w.setInnerProduct(u, X);

w.normalise();

t.setInnerProduct(X, w);

t.normalise();

q.setInnerProduct(t, Y);

if (q.normalise()==0) break; // exit if q length is zero

u.setInnerProduct(Y, q);

double dist=t.distance(t_old);

if(dist<0.00000000001) {

break;

} else {

t_old.set(t);

}

}

U.setColumn(i, u);

W.setColumn(i, w);

T.setColumn(i, t);

Q.setColumn(i, q);

b.set(i,t.dotProduct(u));

// X factor loadings

pv.setInnerProduct(t, X);

P.setColumn(i, pv);

//double tss=t.elementSquaredSum();

//if (tss!=0.0) pv.multiply(1.0/tss);

// deflate X = X - t.p'

pv.negate();

X.addOuterProduct(t, pv);

}

B.getLeadingDiagonal().set(b);

AMatrix ptinv=PseudoInverse.calculate(P.getTranspose());

coefficients.setInnerProduct(ptinv,B.innerProduct(Q.getTranspose()));

//constant.setInnerProduct(B,Q.getColumn(0));

constant.set(Q.getColumn(0));

constant.addInnerProduct(P.getColumn(0), coefficients,-1);;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值