MATLAB--巧妙运用逻辑数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB--巧妙运用逻辑数组相关的知识,希望对你有一定的参考价值。

测试数据:

>> yv = magic(4)
yv =

16     2     3    13
 5    11    10     8
 9     7     6    12
 4    14    15     1

>> y = [3;4;2;1]

y =

 3
 4
 2
 1

style 1

yv=[1:num_labels] == y

>> yv = [1:4] == y

yv =

4×4 logical 数组

0   0   1   0
0   0   0   1
0   1   0   0
1   0   0   0

style 2

yv = zeros(m, num_labels);
for i = 1:m
yv(i, y(i)) = 1;
end

>> yv = zeros(4,4)

yv =

     0     0     0     0
     0     0     0     0
     0     0     0     0
     0     0     0     0

>> for i = 1:4
yv(i, y(i)) = 1;
end

>> yv
     
yv =
     
    0     0     1     0
    0     0     0     1
    0     1     0     0
    1     0     0     0


style 3

all_combos = eye(num_labels);
y_matrix = all_combos(y,:)

>> all_combos = eye(4);
>> y_matrix = all_combos(y,:) 

y_matrix =

     0     0     1     0
     0     0     0     1
     0     1     0     0
     1     0     0     0

以上是关于MATLAB--巧妙运用逻辑数组的主要内容,如果未能解决你的问题,请参考以下文章

如何运用matlab矩阵运算求解线性方程组

matlab逻辑数组怎么用?

matlab逻辑数组怎么用?请看下面的程序段。

从结构字段创建全因子采样的巧妙方法

一道C语言比赛真题,比较考验数组的综合运用,先给大家打个样

一道C语言比赛真题,比较考验数组的综合运用,先给大家打个样