How index using inequalities

13 vues (au cours des 30 derniers jours)
Danny Maefengea
Danny Maefengea le 21 Juin 2020
Commenté : Danny Maefengea le 22 Juin 2020
Hello guys, I was doing this exercise and when I tried running my script, errors appeared.
Create a 1*100 vector A with random numbers from 0 to 10
A = randi([0,10],1,100)
Display all the numbers in A that are greater than 5
u = disp(A>5)
Delete all the numbers in A that are greater than 5
u = []

Réponse acceptée

Walter Roberson
Walter Roberson le 22 Juin 2020
A>5 creates a logical vector, with each entry being true if the corresponding A was (strictly) greater than 5, and false if the corresponding A was less than or equal to 5.
disp(A>5) would display that logical vector.
To display the contents of A where A > 5 you need to use A>5 to select entries out of A using logical indexing.
SomeArray(logical_mask)
However... disp() does not return any value, and it is an error to attempt to assign disp() to a variable.
u = []
If you had assigned u the parts of A that are greater than 5, then u = [] would just empty out that array, without changing A. You again want to use logical indexing
SomeArray(logical_mask) = []
  3 commentaires
Walter Roberson
Walter Roberson le 22 Juin 2020
Well you will need to define the logical_mask as well.
Danny Maefengea
Danny Maefengea le 22 Juin 2020
oh okay thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by