Recent Releases of Psifr

Psifr - Psifr 0.10.0

This version adds a new analysis, conditional response probability by input (input-CRP). It also increases the flexibility of plotting, with options to map a facet of the data to line style and an option to more easily include all lags in a lag-CRP plot.

  • Add a new analysis, input_crp, and its corresponding statistics function, count_input_pairs. It tracks the response probability of different input positions as a function of the previous input position, conditional on availability.
  • Line plot functions now support mapping a facet of the data to line style.
  • The plot_lag_crp function will now plot all possible lags if max_lag is set to None.

Scientific Software - Peer-reviewed - Python
Published by mortonne 8 months ago

Psifr - v0.9.3

This release includes various bug fixes, a new sample dataset, and more flexible benchmarks.

  • Fix a non-deterministic installation-dependent bug affecting window-based functions. It is recommended to re-run any previous window-based analyses run using a previous version.
  • Fix support for cell-array inputs in MATLAB file conversion.
  • Provisional support for the PyArrow backend in Pandas.
  • Add more options for running benchmark tests.
  • Change two examples in the documentation to handle pending changes in the Pandas API.

Scientific Software - Peer-reviewed - Python
Published by mortonne 11 months ago

Psifr - Psifr 0.9.2

This version increments the patch version to fix the upload to PyPI.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 2 years ago

Psifr - Psifr 0.9.1

This version refactors testing of the new distance rank window analyses and adds transition count measures to the analysis output. It also adds new options for the analysis.

This version also includes various maintenance fixes: * Pin Pandas<2.2.0 for now, to avoid a bug in one unit test. * Add Python 3.11 and 3.12 to automated testing. Avoid using pkg_resources unless necessary, to avoid an issue in Python 3.12 and above. * Update GitHub Action versions. * Use a token for upload to Codecov. * Fix a compatibility issue between IPython and Sphinx.

Full Changelog: https://github.com/mortonne/psifr/compare/v0.9.0...v0.9.1

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 2 years ago

Psifr - Psifr 0.9.0

This version changes the output of all analysis functions to improve compatibility, reorganizes low-level functions to create a new stats API, and adds a new Contributor Guide to the documentation.

  • All analysis functions now return all information in columns instead of indexes. This change was made to allow support for calling Psifr functions from R using Reticulate and the {psifrr} package. It should generally improve compatibility with other table-based analysis packages, which generally do not support MultiIndexes. This change doesn't break any known code, but users taking advantage of the Index in analysis output will have to alter their code to set the Index after running the analysis.
  • Low-level functions that were spread across multiple modules are now placed together in a new psifr.stats module. This module provides a unified low-level API for calculating statistics based on list-format data.
  • All masker functions are now placed in a new psifr.maskers module.
  • Unit tests have been reorganized to group together statistics of the same type (e.g., lag-, category-, or distance-based) to make it easier to share fixtures between tests.
  • The build system has been updated to use a pyproject.toml file instead of setup.cfg.
  • A new Contributor Guide has been added to the documentation to provide an overview of the organization of the codebase and provide detailed instructions for developing new analyses.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 2 years ago

Psifr - Psifr 0.8.2

This version fixes support for Seaborn 0.12.0.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 3 years ago

Psifr - Psifr 0.8.1

This version changes the build temporarily to avoid using Seaborn 0.12.0, which currently breaks some plotting functions.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 3 years ago

Psifr - Psifr 0.8.0

This version adds analyses to examine transition statistics based on items recalled before the just-recalled item.

  • Added fr.lag_crp_compound to measure conditional response probability based on the lag of both the previous and current transition.
  • Added fr.distance_rank_shifted to test whether transitions reflect distance to items recalled in earlier output positions.
  • A new tool, transitions.sequences_masker, to help with analyses examining sequences of multiple transitions.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 4 years ago

Psifr - Psifr 0.7.0

This version adds statistics to measure the extent of category clustering in recall sequences.

  • Added fr.category_clustering, which calculates list-based clustering (LBC) and adjusted ratio of clustering (ARC) for free-recall data.
  • Added unit tests for LBC and ARC based on published papers.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 4 years ago

Psifr - Psifr 0.6.0

This version adds support for analyzing prior-list intrusions. It also adds tools for working with semantic distance analyses. The documentation is expanded with examples for most functions.

  • Marking of prior-list intrusions and analysis of the list lag of prior-list intrusions.
  • Documentation of semantic distance analyses in the user guide.
  • A utility for generating datasets from study and recall lists.
  • Tools for working with semantic distance measures.
  • Examples to illustrate most functions.
  • Style reformatting using Black.
  • A change to the automated testing system to use GitHub Actions.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 4 years ago

Psifr - Psifr 0.5.2

This version adds support for block lag CRP analysis, which measures lags between blocks of serial positions. It also improves the flexibility and consistency of some utilities.

  • Support and unit tests for block lag CRP analysis.
  • Support for changing the lag field in lag-CRP analysis and determining whether counted possible transitions are transition-unique or not.
  • Change to list splitting for better consistency. Now item queries are applied to both study and recall events instead of just study events, except in the context of a transition analysis.
  • Added documentation on item and transition filtering.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 5 years ago

Psifr - Psifr 0.5.1

This version fixes a problem with the count_unique option in the distance CRP analysis. It also adds support for counting non-unique lags, which will be necessary for implementing a block CRP analysis.

  • Using the count_unique option for psifr.fr.distance_crp will now only increment each distance bin as possible once per transition. Previously each unique possible distance value was recorded for each transition, rather than each unique possible distance bin.
  • A count_unique option has been added to psifr.transitions.count_lags to handle cases where multiple possible transitions may have the same lag.
  • A configuration file for Zenodo has been added to set project information automatically.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 5 years ago

Psifr - Psifr 0.5.0

This version adds more documentation and does work behind the scenes to better organize the code and make writing extensions simpler.

  • Refactor all unit tests to use pytest instead of unittest.
  • Reorganize unit tests to be more consistent and to remove redundant fixtures.
  • Modernize the build system using updated standards.
  • Reorganize the core analyses to separate measures, transitions functions, and outputs functions. The high-level psifr.fr API remains the same, so this change only affects development of new analyses.
  • Make code style consistent by reformatting using Black.

Scientific Software - Peer-reviewed - Python
Published by mortonne almost 5 years ago

Psifr - Psifr 0.4.4

This release is primarily to trigger archiving on Zenodo. It will also be the tagged version for the JOSS paper.

This update adds: * A quickstart section to the README illustrating how to create and plot a serial position curve.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 5 years ago

Psifr - Psifr 0.4.3

This version adds more documentation, including additional explanation of how to interpret analysis results. A paper under review at JOSS has also been added, which gives background on the analyses implemented in the package and differences from other similar packages.

Other changes: * Improved figure legends on raster plots. * Fixed data filtering when using scalar float values. * Improved automated build settings. * Improved test coverage of data handling and plotting.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 5 years ago

Psifr - Psifr 0.4.2

This update adds:

  • A utility for loading sample data.
  • An option to set plot marker size.
  • A fix to a problem when using a transitions test that only references the previous item.
  • Improvements to the documentation.

Scientific Software - Peer-reviewed - Python
Published by mortonne over 5 years ago

Psifr - Psifr 0.4.1

This release adds support for different forms of conditional response probability and percentile rank analysis, flexible plotting functions, probability of nth recall analysis, and profiling tools.

Added features: * Plotting functions for analyses that generate a curve * Swarm/errorbar plots for categorical data * Raster plots * Conditional response probability by category * Conditional response probability by distance * Recall probability by output position * Profiling using asv and snakeviz * Percentile rank measures by lag and distance

Scientific Software - Peer-reviewed - Python
Published by mortonne over 5 years ago