我有一個垂直的Nx1矩陣滿了整數。MATLAB根據矢量生成具有邏輯值的矩陣
A:
+---+
| 4 |
| 3 |
| 1 |
| . |
+---+
我的目標是創建一個N×M個矩陣B,其中每個單元的值是1,如果是行是小於或等於A中的相應的編號,其餘爲0。
B:
+-------------+
| 1 1 1 1 0 . |
| 1 1 1 0 0 . |
| 1 0 0 0 0 . |
| . . . . . . |
+-------------+
這可以通過逐行迭代來實現,但我試圖找到更快的方法。我覺得這可以通過邏輯索引來完成,但不能想到如何完全擺脫我的頭腦。
這似乎不適用於我。大小(A,1)將給出N,A矢量的高度。 1:大小(A,1)將給出水平向量1,2,... N。當我執行A> = 1:size(A,1)時,表示Matrix維度的MATLAB錯誤必須一致。我明白你想通過比較一個垂直矢量和一個水平矢量來得到矩陣,但是這個語法看起來不起作用。 –
沒關係,只是看到你的編輯。 –