Matrix manipulation by function

3 visualizzazioni (ultimi 30 giorni)
Lila wagou
Lila wagou il 6 Apr 2017
Commentato: Lila wagou il 7 Apr 2017
Dear all, For a given matrix (square) i need to eliminate some elements (some rows and columns)
A =
35 6 19
3 7 23
31 2 27
I need only the second (not the first and the third) row and column : the eliminated are stocked in a vector
B = (1 3)
So : some function (A, B) :::> the result C = 7
function (A, B) = C
  2 Commenti
KSSV
KSSV il 6 Apr 2017
iwant = A(2,2)
wont it solve the purpose?
Lila wagou
Lila wagou il 6 Apr 2017
Dear KSSV, i need a function for lot of use
A1 =
35 6 19
3 7 23
31 2 27
and
B1 = (1 3)
C1 = 7
or
A2 =
35 6 19 11
3 7 23 44
31 2 27 55
31 2 27 55
and
B2 = (2 3)
C2 =
35 11
31 55

Accedi per commentare.

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 6 Apr 2017
ii = num2cell([1;1]*setdiff(1:length(A),B(:)'),2);
out = A(ii{:});
  8 Commenti
Andrei Bobrov
Andrei Bobrov il 7 Apr 2017
V_new = V_old;
V_new(V_ord) = V_ins;
Lila wagou
Lila wagou il 7 Apr 2017
Dear Andrei; please how to trait a vector (eliminate the elements stocked in a vector by order)
A = [10 52 33]
B = [3]
ii = num2cell([1]*setdiff(1:length(A),B(:)'),1);
out = A(ii{:});
i get out = 52 so i must get out = 10 52

Accedi per commentare.

Più risposte (1)

Fangjun Jiang
Fangjun Jiang il 6 Apr 2017
C=A;
C(B,:)=[];
C(:,B)=[]

Categorie

Scopri di più su Operators and Elementary Operations in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by