Effacer les filtres
Effacer les filtres

Simple question about vector remainders

3 vues (au cours des 30 derniers jours)
Phil
Phil le 28 Nov 2012
So I have one vector x = [19 21 25 24 18 20]
I need to use this vector to find another vector that contains only the amounts over 20. So it should look something like x = [0 1 5 4 0 0].
This seems like it should be incredibly simple but it is giving me grief. The only thing I have tried that has come relatively close is something like b = (x-20)>0 which simply returns that certain values are true to be over 20(i.e. b = 0 1 1 1 0 0.)
I've also tried declaring another vector w = [20 20 20 20 20 20] and then doing z = w - x but that returns some negative results in the vector.
Any help is greatly appreciated.

Réponse acceptée

Matt Fig
Matt Fig le 28 Nov 2012
Modifié(e) : Matt Fig le 28 Nov 2012
y = mod(x,20).*(x>20) % if no x>40
Or if some value may be greater than 40,
y = max(x-20,0)

Plus de réponses (1)

Azzi Abdelmalek
Azzi Abdelmalek le 28 Nov 2012
Modifié(e) : Azzi Abdelmalek le 28 Nov 2012
y=(x-20).*(x>20)

Catégories

En savoir plus sur MATLAB 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