Info

This question is locked. Reopen it to edit or answer.

Deleting Some Specific Entries from a vector

1 view (last 30 days)
I have vectors xa and yb. I want to write the entries of yb to xa which are not the ones -1,0,1,0.6,-0.6,0.8,-0.8
I apply this one
xa=yb(yb~=1);
xa=xa(xa~=-1);
xa=xa(xa~=0);
xa=xa(xa~=0.6);
xa=xa(xa~=-0.6);
xa=xa(xa~=-0.8);
xa=xa(xa~=0.8);
But it just deletes -1,0 and 1. Not 0.6,-0.6,0.8,-0.8. Where do you think the problem is? Or how can I change it?

Accepted Answer

Wan Ji
Wan Ji on 21 Aug 2021
Just do with the following
q = abs(yb);
p = (q==0|q==1|q==0.6|q==0.8);
xa = yb(~p)
if it does not work, use a tolerance TOL
TOL = 1e-5
q = abs(yb);
p = (q<=TOL|abs(q-1)<=TOL|abs(q-0.6)<=TOL|abs(q-0.8)<=TOL);
xa = yb(~p)

More Answers (0)

This question is locked.

Community Treasure Hunt

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

Start Hunting!