/psychofit

A module for fitting 2AFC psychometric data

Primary LanguageJupyter NotebookMIT LicenseMIT

psychofit

Coverage Status CI

A module for fitting 2AFC psychometric data.

The psychofit module contains tools to fit two-alternative psychometric data. The fitting is done using maximal likelihood estimation: one assumes that the responses of the subject are given by a binomial distribution whose mean is given by the psychometric function.

The data can be expressed in fraction correct (from 50 to 100%) or in fraction of one specific choice (from 0 to 100%). To fit them you can use these functions:

  • weibull50 - Weibull function from 0.5 to 1, with lapse rate.
  • weibull - Weibull function from 0 to 1, with lapse rate.
  • erf_psycho - erf function from 0 to 1, with lapse rate.
  • erf_psycho_2gammas - erf function from 0 to 1, with two lapse rates.

Functions in the toolbox are:

  • mle_fit_psycho - Maximumum likelihood fit of psychometric function.
  • neg_likelihood - Negative likelihood of a psychometric function.

For more info, see:

  • Examples.ipynb - Examples of use of psychofit toolbox.

Matteo Carandini (2000-2017) initial Matlab code
Miles Wells (2017-2018) ported to Python