Indexing negative and positive elements of a vector

16 次查看(过去 30 天)
Hello, I want to find a more elegant way of indexing positive and negative elements of a vector. Here is what I have so far. I have a vector of numbers (Vec1) and I would like to find a coresponding vector where the logical indexing assigns 1 to positive numbers and -1 to negative numbers.
e.g.
Vec1 = [-0.2 0.3 0.5 0.7 -0.4 0.5 -0.5]
PosInd = Vec1 > 0;
NegInd = (Vec1 < 0)*(-1);
IndVec = PosInd + NegInd;
IndVec is = [-1 1 1 1 -1 1 -1]
Is there a nicer (and more direct) way to do that?
Thanks in advance,
Martin

采纳的回答

Jonathan Sullivan
Jonathan Sullivan 2013-6-24
help sign
doc sign

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by