Simple question about vector remainders

1 visualizzazione (ultimi 30 giorni)
Phil
Phil il 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.

Risposta accettata

Matt Fig
Matt Fig il 28 Nov 2012
Modificato: Matt Fig il 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)

Più risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 28 Nov 2012
Modificato: Azzi Abdelmalek il 28 Nov 2012
y=(x-20).*(x>20)

Categorie

Scopri di più su 2-D and 3-D Plots 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