MATLAB ind2vec和vec2ind函数

1、首先从字面上的意思ind2vec()函数表示从索引到向量

举例子:

A=[1 3 2 2 2 1 2 3];

B=ind2vec(A)
B =


   (1,1)        1
   (3,2)        1
   (2,3)        1
   (2,4)        1
   (2,5)        1
   (1,6)        1
   (2,7)        1
   (3,8)        1
可以看出A是一个1行8列的矩阵

得到的B就是对应的索引关系,它的索引表是一个3行8列的矩阵,只有在B中出现的位置为1,其它位置全为0


2、首先从字面意思vec2ind()函数表示从向量到索引

举例子:

B=[1 0 0 0 0 1 0 0;0 0 1 1 1 0 1 0; 0 1 0 0 0 0 0 1]
B =


     1     0     0     0     0     1     0     0
     0     0     1     1     1     0     1     0
     0     1     0     0     0     0     0     1
A=vec2ind(B)
A =


     1     3     2     2     2     1     2     3
可以看出B是一个3行8列的矩阵

A最后的到的索引为一个1行8列的矩阵。


总结:当由索引到向量时,索引矩阵中有多少列,得到的索引表就有多少列,索引矩阵中的最大值即是索引表的行数。

            当由向量到索引时,向量中每一列中的所有元素有且只能有一个为1,向量的列数即为索引矩阵的列数。
————————————————
版权声明:本文为CSDN博主「GU-student」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011314012/article/details/51191006

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值