Simple question about vector remainders

1 Ansicht (letzte 30 Tage)
Phil
Phil am 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.

Akzeptierte Antwort

Matt Fig
Matt Fig am 28 Nov. 2012
Bearbeitet: Matt Fig am 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)

Weitere Antworten (1)

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

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by