Plot a binary value each time a number in vector A is also present in vector B.

2 次查看(过去 30 天)
I have two vectors of different sizes: A=5000x1 and B=86000x1. They both represent time in seconds, but A shows important timestamps while B shows all seconds in my observation window.
I was wondering how I can calculate a binary Result vector where 1 will mark each of the seconds in B that were stamped in A, and 0 will mark all the remaining seconds. I realised A could also work as a vector showing indexes, since B is a continuous vector 1:86000, if that helps.
I am struggling with this problem, that doesn't look very complex but it's eating my brain. Thanks!
  1 个评论
Carlos Goncalves Moreira
I Actually solved this question already. I have created a 86000x1 vector of zeros and tranformed all the indexes stated in vector A into ones. It was easy. Thanks anyway.

请先登录,再进行评论。

回答(1 个)

Matt J
Matt J 2018-7-17
Or you could use ismember,
result = ismember(B,A);

类别

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