学习笔记16—Matlab 基础集

1、常用相关 [r, p] = corr(X,Y), [r, p] = partialcorr(X,Y, Z) , 其中Z是协变量。

2、TD_age = importdata('F:\BrainAging\result\NYU_SDSU_TD_age.mat'); 注意:红色标记处必须加上后缀。

3、代码智能缩进:Ctrl + I

4、求上三角矩阵函数:triu(A,k)%求矩阵A的第K条对角线以上的元素(k = 0 表示包含对角线)。
     求下三角矩阵函数:tril(A,k)%求矩阵A的第K条对角线以下的元素(k = 0 表示包含对角线)。

5、提取矩阵(A)的值:

    1)按列:B = A(:),B = A(:,k) 或者用reshape函数 ----> 按列取下/上三角部分:
        %% 取下三角矩阵(按列,能将零值取出来)
        myMatrix = fix(5*rand(5,5))+1;
        myMatrix2 = myMatrix';%转置
        yourWant = myMatrix(logical(tril(ones(size(myMatrix2)))));%取下三角形
       或者:ind = find(tril(A,-1)); B= A(ind)---->按列取出非零值;
       %% 取上三角矩阵(按列,能将零值取出来)
       myMatrix = fix(5*rand(5,5))+1;
       yourWant = myMatrix(logical(triu(ones(size(myMatrix)))));

    2)按行:B = A(k,:)

    3)按对角:cc = cell2mat(arrayfun(@(k) diag(A,k),1:3,'un',0)')';

6、计算相关有:[h,p] = corr(X,Y); [h, p] = partialcorr(X,Y, cov);

7、disp显示函数用法:disp(i)或者disp([‘my test=’,num2str(test)])

8、matlab中cell定义和赋值:w = {};w(i,:)={model.w};

9、MATLAB,在cell中取数据:

   如下,node是一个2x1的cell,每个cell中有矩阵16x23

   

  提取第一个cell中,第二行第三列的元素

  

  使用 

  node{1,1}(2,3);

  结果:
  ans =
     -0.8593

10、

  sort(A)若A是向量不管是列还是行向量,默认都是对A进行升序排列。sort(A)是默认的升序,而sort(A,'descend')是降序排序。
  sort(A)若A是矩阵,默认对A的各列进行升序排列
  sort(A,dim)
  dim=1时等效sort(A)

 dim=2时表示对A中的各行元素升序排列

 

   看下面的例子

 

   >> A=magic(3)
  A =
  8 1 6
  3 5 7
  4 9 2

  >> sort(A)
  ans =
  3 1 2
  4 5 6
  8 9 7

  >> sort(A,1)
  ans =
  3 1 2
  4 5 6
  8 9 7

  >> sort(A,2)
  ans =
  1 6 8
  3 5 7
  2 4 9

11、

   按矩阵的某一行排序:

  a =

  5 7 8
  4 6 1
  8 0 7

  >> sortrows(a,3)

  ans =

  4 6 1
  8 0 7
  5 7 8

12、Matlab中排列组合函数

  1. perms(x):在程序命令框中输入一个向量x,perms(x) 给出向量x的所有排列。

     
  2. combntns(x,m):在程序中输入一个向量x与需要的元素个数m,combntns(x,m)给出了从包含n个元素的向量x中选取m个元素的组合。

     
  3.  nchoosek(x,m):在程序中输入一个向量x与需要的元素个数m,nchoosek(x,m)给出了从包含n个元素的向量x中选取m个元素的组合。
     

13、标准化

     1. Min-max 标准化

    新数据=(原数据-极小值)/(极大值-极小值)

    标准化以后,X中元素的取值范围是[0,1]。

  X = (X-Xmin))./(Xmax-Xmin);

   2. z-score 标准化

  新数据=(原数据-均值)/标准差

    标准化以后,X中元素的取值范围为实数。

  % Zscore normalize
  X=zscore(X);
   原文:https://blog.csdn.net/qq_29259155/article/details/62884807?utm_source=copy

14、save存储:

        save(['E:\hcc\DTI\test\','eddy_corrected_data_hcc_111.txt'], 'D', '-ascii')
        save eddy_corrected_data_hcc.txt D -ascii

15、提取cell中某行某列的值:

      如下,node是一个2x1的cell,每个cell中有矩阵16x23

     

     提取第一个cell中,第二行第三列的元素

   

   使用 node{1,1}(2,3);结果:ans =  -0.8593

16、matlab 随机颜色矩阵:mat2cell(0+.75*rand(L,3),ones(1,L),3 )

17、matlab中,把一组数据顺序颠倒:行向量就用fliplr函数 列向量就用flipud函数

 

 

 

 

转载于:https://www.cnblogs.com/hechangchun/p/9658397.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值