expyfun.stimuli.TrackerDealer¶
- class expyfun.stimuli.TrackerDealer(callback, trackers, max_lag=1, pace_rule='reversals', rand=None)[source]¶
Class for selecting and pacing independent simultaneous trackers
- Parameters:
- callbackcallable | ExperimentController | None
The function that will be used to print the data, usually to the experiment .tab file. It should follow the prototype of
ExperimentController.write_data_line
. If an instance ofExperimentController
is given, then it will take that object’swrite_data_line
function. If None is given, then it will not write the data anywhere.- trackersarray-like
The trackers to use. Must be instances of
expyfun.stimuli.TrackerUD
orexpyfun.stimuli.TrackerBinom
.- max_lagint
The number of reversals or trials by which the leading tracker may lead the lagging one. The
pace_rule
dictates whether reversals or trials are used.- pace_rulestr
Must be
reversals
ortrials
.- randnumpy.random.RandomState | None
The random process used to deal the trackers. If None, the process is seeded based on the current time.
- Returns:
- dealerinstance of TrackerDealer
The tracker dealer object.
Notes
The trackers can be accessed like a numpy array through the trackers property, e.g.
dealer.trackers[0, 1, :]
.If dealing from TrackerBinom objects (which is probably not a good idea),
stop_early
must beFalse
or else they cannot be ensured to keep pace.- history(include_skips=False)[source]¶
The history of the dealt trials and the responses
- Parameters:
- include_skipsbool
Whether or not to include trials where a tracker was dealt but no response was made.
- Returns:
- tracker_historylist of int
The index of which tracker was dealt on each trial. Note that the ints in this list correspond the the raveled index.
- x_historylist of float
The level of the dealt tracker on each trial.
- response_historylist of bool
The response history (i.e., correct or incorrect)
- next()[source]¶
Selects the tracker from which the next trial should be run
- Returns:
- subscriptslist-like
The position of the selected tracker.
- x_currentfloat
The level of the selected tracker.
- respond(correct)[source]¶
Update the current tracker based on the last response
- Parameters:
- correctboolean
Was the most recent subject response correct?
- property stopped¶
Are all the trackers stopped
- property trackers¶
All of the tracker objects in the container
Examples using expyfun.stimuli.TrackerDealer
¶
Adaptive tracking from above and below
Adaptive tracking for two trial types and tracker reconstruction from .tab