Filter löschen
Filter löschen

Use of arrayfun but with passing a fixed variable to function handle?

2 Ansichten (letzte 30 Tage)
Hi!
I hope someone can help me with this.
The first column of my matrix contains start indices and the second stop indices that should be used to read out a segment from another vector.
From that segment some calculations are done returning a scalar, that should be stored in a third column.
This code shows the idea. WIth spikeTimes is the external vector providing the segments.
For sure it's not working, since spikeTimes is a kind of fixed variable whith another size.
matrix(:,1) = start_temp;
matrix(:,2) = stop_temp;
f = @computeS;
matrix(:,3) = arrayfun(f,start_temp,stop_temp, spikeTimes);
function thresh = computeS(a,b,spikeTimes)
thresh = max(diff(spikeTimes(a:b)));
end
And it was just an idea,I'm happy about any thoughts about a proper solution. Maybe the best is simply running a loop?
Thank you in advance, I appreciate any hints!
Eva

Akzeptierte Antwort

James Tursa
James Tursa am 25 Mai 2020
matrix(:,3) = arrayfun(@(a,b)max(diff(spikeTimes(a:b))),start_temp,stop_temp);

Weitere Antworten (0)

Kategorien

Mehr zu Data Type Identification 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