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,:)