2
假设我有A = ones(10,1)* 10 那么这是做什么眼睛(10)(A,:)?如何在Octave中将标签矢量转换为二进制矢量?
我知道眼睛给出了一个10,10的单位矩阵,但我不确定上面的代码在做什么。 和Matlab中的等效代码是什么?
假设我有A = ones(10,1)* 10 那么这是做什么眼睛(10)(A,:)?如何在Octave中将标签矢量转换为二进制矢量?
我知道眼睛给出了一个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,:)
选择第10行myMatrix
,10次。所以你10次回到eye(10)
的第10行。
如果你做A=ones(5,1)*10
并看看eye(10)(A,:)
;请注意,您现在只能获得5次A
的第10行。
你不能在Matlab中这样做,因为它不会让你做一击eye(10)(A,:)
。您必须分两步完成:
A = ones(10,1)*10
I = eye(10)
I(A,:)