[英]How to a convert a vector of labels into a binary vector in Octave?
假设我有A = 1(10,1)* 10那么这是什么眼睛(10)(A,:) ??
我知道eye给出了10,10个单位矩阵,但我不确定上面的代码是做什么的。 什么是Matlab中的等效代码?
A=ones(10,1)*10
只产生10s的列矩阵(10行,1列)。
eye(10)
生成10x10单位矩阵。
(A,:)
索引到您刚刚创建的单位矩阵中。 这里的A
充当eye(10)
矩阵的数字索引。 假设A
只有10.然后myMatrix(A,:)
将选择myMatrix
的第10行。 由于A
是10 行 10, myMatrix(A,:)
选择myMatrix
的第10行, 10次 。 所以你回到第10排eye(10)
10次。
如果你做A=ones(5,1)*10
并且看一下eye(10)(A,:)
,那可能不那么令人困惑; 注意你现在只得到A
的第10行5次。
你不能在Matlab中这样做,因为它不会让你做一见eye(10)(A,:)
。 你必须分两步完成:
A = ones(10,1)*10
I = eye(10)
I(A,:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.