Filter löschen
Filter löschen

how to sort the vectors to positive n negative of same elements?

2 Ansichten (letzte 30 Tage)
Hi All, say i have a vector v = [1,-2,3,4,5,6,7,8,9,77,44,88,99,-1,95,-6,-7,-8,-9] now i want to check element by element if there is a same element with opposite sign(1, -1) in the array and plot it as zero in their respective points in the x axis. Please note: i do not need to store the values in the variable and just need to plot it. How can i implement that?
thanks

Akzeptierte Antwort

Stephen23
Stephen23 am 7 Mär. 2017
Bearbeitet: Stephen23 am 7 Mär. 2017
>> v = [1,-2,3,4,5,6,7,8,9,77,44,88,99,-1,95,-6,-7,-8,-9]
v =
1 -2 3 4 5 6 7 8 9 77 44 88 99 -1 95 -6 -7 -8 -9
>> out = v .* ~ismember(v,-v)
out =
0 -2 3 4 5 0 0 0 0 77 44 88 99 0 95 0 0 0 0
>> plot(out)
  3 Kommentare
Stephen23
Stephen23 am 7 Mär. 2017
Bearbeitet: Stephen23 am 7 Mär. 2017
Then do the opposite:
out = v .* ismember(v,-v)
If neither of these resolve your question then please explain exactly what you want together with example input and output data. Your original question states "..if there is a same element with opposite sign(1, -1) in the array and plot it as zero..", and that is exactly what my answer gives you: values which are both positive and negative in the vector are plotted as zero.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by