matlab处理矩阵的一些简易操作和画图的一些小技巧

来源:互联网 发布:egd网络黄金合法吗 编辑:程序博客网 时间:2024/04/30 14:20

单位矩阵eye(2)

零矩阵zeros(2)

两个矩阵元素一对一相乘,

.* B

两个矩阵元素一对一相除

A./B

两个矩阵元素一对一相加,

sum(A, B)

矩阵分割

B=A(1:2000, :)

矩阵扩充

B=(ones(size(A,1),1), A)

矩阵累积

A=repmat(B,1,3),可以得到A=(B,B,B)

矩阵求逆

AX=B, X=A\B

XB=A,   X=A/B

直接求逆

inv(A)

大型稀疏矩阵伪逆

pinv(A)

寻找矩阵中的元素a的index

find(A,a)

找一个矩阵的最小元素的index

    m = min(cvloss(:));
    [besti,bestj] = find(cvloss == m);
    bestSigma = sigma(bestj(1));
    bestLambda = lambda(besti(1)); %%加1是为了防止矩阵有同样的元素时,返回多个值


reshuffle矩阵

A = A(randperm(N),:)


向量可直接用于循环

A=[4, 10, 12, 16]

for i =A

...

end


对向量直接求长度

length(A)

5-cross folder validation 矩阵划分为5份

for fold = 1: 5
    cv_te_idx = fold:5:size(X_tr, 1);
    cv_tr_idx = setdiff(1:size(X_tr, 1), cv_te_idx);  
    
    fold_X_tr = X_tr(cv_tr_idx, : );
    fold_X_te = X_tr(cv_te_idx, : );
    fold_y_tr = y_tr(cv_tr_idx, : );
    fold_y_te = y_tr(cv_te_idx, : );

end


画图的时候

y = linspace(x1,x2,n)

    





0 0
原创粉丝点击