返回矩阵的行和列,对行使用一对一映射向量,对列使用向量

3次查看(最近30天)
MatG
MatG 2021年8月5日
回答: 斯蒂芬。 2021年8月5日
我有一个大的NxN矩阵a,我如何使用列向量pnRowsToSelect = [row1;row2;…;a (row1,col1), a (row2, col2),…, A(rowM, colM) when row1, row2,…, rowM可以是任何行(不一定是连续的)——列也一样。即“pnRowsToSelect”是其对应的列为“pnColsToSelect”的行,这样“pnRowsToSelect”的第I行和“pnColsToSelect”的第I行就是我想返回的A的第I个元素。
例如,"A= rand(10000);"和"pnRowsToSelect= [1;1000;" and "pnColsToSelect =[10 5 100];",然后我想有A(1,10), A(1000, 5),和A(4,100)。我尝试了“A(pnRowsToSelect, pnColsToSelect)”,这个返回A(1,10), A(1,5), A(1,100);A(1000,10), A(1000, 5), A(1000,100);A(4,10), A(4,5), A(4,100)]它的对角元素就是我要找的。因此,我可以使用“diag(A(pnRowsToSelect, pnColsToSelect))”。有没有更有效的方法来做这件事?

更多的答案(0)

标签

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!