How do you select elements of one cell array based on the contents of another cell array?

3 visualizaciones (últimos 30 días)
Hey all! I have two cell arrays, "spiketimes" and "eyetimes". Both of them contain elements which are essentially time points at which an event occurs. Now, I'm using the following lines of code to select elements of "eyetimes" based on the value of "spiketimes"
idx = ismembertol(eyetime,spiketimes,0.02, 'DataScale',1 );
eyetime = eyetime(idx);
Elaborating on the code a bit further, the index selects elements of "eyetime" for each value of "spiketime" with an interval of 0.02 secs. For eg, if an element of "spiketimes" is 0.250, it'll select all elements of "eyetime" between 0.250+0.02 & 0.250-0.02. I want to modify this code to only select elements of "eyetimes" before 0.250 i.e 0.250-0.02 only. How would I go about executing this? Thanks in advance!

Respuestas (1)

Jonas
Jonas el 8 de Jul. de 2021
lower your aim value by half your error interval and half your error interval
-> 0.250-(0.02/2)+0.02/2 & 0.250-(0.02/2)-0.02/2
  2 comentarios
Kevin Akash Rajasekaran
Kevin Akash Rajasekaran el 8 de Jul. de 2021
Alright I see, but that's just for one value right? How do I go about extending this to the rest of the "spiketimes" array?
Jonas
Jonas el 8 de Jul. de 2021
create another version of spiketimes in which all elements are lowered by 0.02/2

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by