我們習慣于在Matlab中使用不同形式的索引:標準(使用沿每個維度的整數),邏輯(使用邏輯值),線性(使用單個索引遍歷多個維度的數組)。乍一看,這些形式似乎是排他性的:索引要么是標準的,要么是邏輯的,或者是線性的。然而,有時這些形式中的幾種似乎是混合在一起的。例如,>> A = magic(3)A =
8 1 6
3 5 7
4 9 2>> A(A>5)ans =
8
9
6
7這是合乎邏輯的索引,對吧?但是它也有一些線性索引的特性,因為返回列向量。實際上,邏輯索引A>5具有與線性指數相同的效果。find(A>5).作為第二個例子,請考慮>> A = magic(3)A =
8 1 6
3 5 7
4 9 2>> A(1:2, [true false true])ans =
8 6
3 7在這個表達式中,標準(整數值)索引用于第一個坐標,邏輯索引用于第二個坐標。這些例子(以及在實踐中出現的更復雜的例子)提出了以下問題:Matlab中有哪些類型的索引?如何將它們結合起來?應如何提及這些問題?線性索引,邏輯索引等等
添加回答
舉報
0/150
提交
取消