Effacer les filtres
Effacer les filtres

check the row that has at least one non zero element, except one row

1 vue (au cours des 30 derniers jours)
negin tebyani
negin tebyani le 12 Fév 2018
Commenté : Stephen23 le 13 Fév 2018
I have a matrix that has 20 rows and I have to calculate some thing only on the rows that have at least one element, except one row that is specified by a variable, I use this:
for i = setdiff(1:r, row)
for the specific row exception part, but how can i mix this with, for example, any(matrix,2)?
  2 commentaires
Bob Thompson
Bob Thompson le 12 Fév 2018
I'm a little confused what you're asking. Are you looking for how to code the check for non-zero elements in each row?
negin tebyani
negin tebyani le 12 Fév 2018
let me explain it this way. I have to build a matrix called interference that the elements have to be like this:
interference(1,1)=[gain(2,1)/mbw(2)]+[gain(3,1)/mbw(3)]+[gain(4,1)/mbw(4)]
considering the interference is a 4*4 matrix. i have gain and mbw arrays.

Connectez-vous pour commenter.

Réponses (1)

Stephen23
Stephen23 le 12 Fév 2018
idx = setdiff(1:r, row)
any(matrix(idx,:),2)
  4 commentaires
negin tebyani
negin tebyani le 12 Fév 2018
Modifié(e) : negin tebyani le 12 Fév 2018
thank you for this, I have a question about the first answer, I mean:
idx = setdiff(1:r, row)
any(matrix(idx,:),2)
how can I use both these in a for? in shape of the second answer
Stephen23
Stephen23 le 13 Fév 2018
for idr = 1:r
idx = setdiff(1:r, idr);
any(matrix(idx,:),2)
end

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by