Skip to main content

Automatic IntelliCage data analysis using Python

Project description

IntelliPy Logo

IntelliPy

Python GUI for automatic analyses of IntelliCage data

Motivation:

The IntelliCage system helps researchers to conduct behavioral experiments and learning experiments with mice while ensuring minimal human intervention. The animals can be observed for long time periods - up to several weeks. This long-term data acquisition can provide new insights in mouse behavior, that might not be detectable in short-term observations. However, analyzing those big amounts of data is challenging for many researchers. IntelliPy aims to simplify and automize many aspects of the analysis, such as acquiring data per group, creating learning curves or pivoting parameters in different timeframes. All plots are automatically created and the final tables for statistical tests are stored separately for the user.

Usage

IntelliyPy utilizes the Nosepoke.txt and Visit.txt file of an experiment. These files can be extracted using the TSE Analyzer. Additionally, a Group Assignment file has to be created:

Usage

Create a group assignment file:

A tab-separated text file (tsv) is necessary in order to tell IntelliPy, which Animal belongs to which group. It additionally contiains information about the label given for sucrose - if Sucrose Preference experiments were performed. You have to create this file for yourself in this manner:

  1. Give the word Label followed by a tab followed by the label you chose for sucrose in line one.
  2. Give the name of the first group followed by a tab and then all animals belonging to this group - also tab separated
  3. repeat step 2) for all remaining groups

An example file is added as "Group_assignment.txt"

Conducted analyses:

Analyses Overview

Pivot tables:

For the parameters, measured by the IntelliCage Systems, such as Lick Duration, Nosepoke Number or NosepokeDuration, pivot tables are created for each module by IntelliPy. By default, these timeframes are created per day, but the user can add more timeframes using the IntelliPy GUI, like e.g. 12-hour or 6-hour timeframes. For further sttistical analyses, the pivoting results are stored as CSV files.

Learning Rates:

As the experiments conducted with the IntelliCage systems can be conducted as learning experiments with different setups per phase, the learning rate of each individual as well as for the each group can be of high interest. Rather than only the final rate of correct attempts, the rate per hour and per visit is computed and plotted by IntelliPy. This enables the user, to utilize longitudinal learning information for each individual and group. For those learning rates, it is even possible to include all nosepokes or to remove those that were not followed by a lick. It can be argued about, whether a nosepoe without a lick should or shouldn't be accounted as a correct attempt, so this decision is up to the user. Furthermoe, there are both, the possibility to exclude all nosepokes not followed by a lick or to treat them as incorrect attempts.

Sucrose Preference analyses:

For learning experiments, including the choice between water and sucrose, the proportion of LickDuration spent for Sucrose over time is computed by IntelliPy. Additionally, it is possible to define Sucrose and Water or just one of both as correct for the learning rate.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

IntelliPy-0.9.6.tar.gz (9.6 kB view hashes)

Uploaded Source

Built Distribution

IntelliPy-0.9.6-py3-none-any.whl (17.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page