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

1 Ansicht (letzte 30 Tage)
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!

Antworten (1)

Jonas
Jonas am 8 Jul. 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 Kommentare
Kevin Akash Rajasekaran
Kevin Akash Rajasekaran am 8 Jul. 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 am 8 Jul. 2021
create another version of spiketimes in which all elements are lowered by 0.02/2

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by