Simple question about vector remainders

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.

 采纳的回答

Matt Fig
Matt Fig 2012-11-28
编辑:Matt Fig 2012-11-28
y = mod(x,20).*(x>20) % if no x>40
Or if some value may be greater than 40,
y = max(x-20,0)

类别

在 帮助中心 和 File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by