MATLAB Answers

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

3 views (last 30 days)
Kevin Akash Rajasekaran
Kevin Akash Rajasekaran on 8 Jul 2021
Commented: Jonas on 8 Jul 2021
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!

Answers (1)

Jonas
Jonas on 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

Community Treasure Hunt

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

Start Hunting!