I can I do logical indexing on a column

1 vue (au cours des 30 derniers jours)
Engdaw Chane
Engdaw Chane le 20 Juil 2018
Commenté : Engdaw Chane le 20 Juil 2018
Hello everyone,
I have a column which is 840 in length. It contains value s from -12 to 12. I need only values < -8 and >8. I need to keep the length 840. I tried the following. but it says " 0x1 empty double column vector".
v = zeros (size (data)); % Pre-allocate!
v=data(data <-8 & data>8)
thank you for helping.
Chane

Réponse acceptée

Birdman
Birdman le 20 Juil 2018
Modifié(e) : Birdman le 20 Juil 2018
Is it possible for a value to be smaller than -8 and greater than 8 at the same time? Check your logical operator. You need OR operator instead of AND.
v=data(data <-8 | data>8)
You can not keep the length same. If you want that, fill the other values with a specific value, like zero.
  5 commentaires
Guillaume
Guillaume le 20 Juil 2018
Modifié(e) : Guillaume le 20 Juil 2018
Well, if you want to replace values less than absolute 8 by 0, then:
v(abs(v) < 8) = 0;
You may want <= instead of <
Engdaw Chane
Engdaw Chane le 20 Juil 2018
Birdman and Guillaume, Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by