1
有誰知道是否有辦法在Matlab中稀疏數組中進行行列位置的簡單重新排序?Matlab稀疏陣列索引重新分配
我有一個稀疏數組,它對應於我想要分析的圖的鄰接矩陣,我想用一些計算出的度量來重新排列圖中的頂點(同時快速保存映射的方式構建)
有沒有人有任何建議的方式來做到這一點?我是Matlab新手,並且還不完全熟悉Matrix操作的所有工具。
有誰知道是否有辦法在Matlab中稀疏數組中進行行列位置的簡單重新排序?Matlab稀疏陣列索引重新分配
我有一個稀疏數組,它對應於我想要分析的圖的鄰接矩陣,我想用一些計算出的度量來重新排列圖中的頂點(同時快速保存映射的方式構建)
有沒有人有任何建議的方式來做到這一點?我是Matlab新手,並且還不完全熟悉Matrix操作的所有工具。
使用稀疏矩陣,您可以像使用常規矩陣一樣分配入口值。例如:
>> a = sparse(1:2, 3:4, [1 1], 4, 5, 7)
a =
(1,3) 1
(2,4) 1
a(1,3) = 0; a(1,2) = 1; % move the "1" from (1,3) to (1,2)
>> a
a =
(1,2) 1
(2,4) 1
您也可以分配整列或行。例如,該交換列2和3:
aux = a(:,3);
a(:,3) = a(:,2);
a(:,2) = aux;
請說明您打算如何使用公制來重新排序行和/或列,如果你只是想周圍或_entire_行/列移動單個元素。 – chappjc