基于单个元素检索列和行元素

时间:2014-11-07 13:53:10

标签: matlab

给定m×n矩阵,如何从没有索引元素本身的给定索引的列和行中获取有序(从左到右到右下)的条目?

例如,给定5 x 5魔方矩阵A,我想检索对应于(4,2)元素的列和行元素:

A =
    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

这应该产生:

B =
    24     5     6    10    19    21     3    18

或者,请求(5,5)元素将产生:

B =
    15    16    22     3    11    18    25     2

或者,对于(3,2),我们有:

B =
    24     5     4    13    20    22    12     18

1 个答案:

答案 0 :(得分:3)

如果输出B中的元素顺序不重要,您可以使用它 -

B = setdiff([A(:,col_id).' A(row_id,:)],A(row_id,col_id),'stable')

如果订单很重要,这个凌乱的解决方案看起来很合适 -

B = [A(1:row_id-1,col_id).' A(row_id,1:col_id-1) ...
                                    A(row_id,col_id+1:end) A(row_id+1:end,col_id).']