Skip to main content

Generated from aind-library-template

Project description

aind_disrnn_utils

License Code Style semantic-release: angular Interrogate Coverage Python

Usage

Creating a dataset

  • Obtain a list of NWB files you wish to fit the model to
import aind_dynamic_foraging_multisession_analysis.multisession_load as ms_load
import aind_disrnn_utils as dl

nwbs, df_trials = ms_load.make_multisession_trials_df(nwb_files)
dataset = dl.create_disrnn_dataset(df_trials)
  • You don't need to use make_multisession_trials_df, but the trials data frame does need to have a column "ses_idx" that splits trials into sessions.

Predefined datasets

This Code Ocean Capsule can be used for loading a list of sessions and saving the result as a dataframe: Code Ocean Capsule

The resulting data assets can be used like:

import pandas as pd
import aind_disrnn_utils.data_loader as dl
df = pd.read_csv('/data/disrnn_dataset_774212/disrnn_dataset.csv')
dataset = dl.create_disrrn_dataset(df)
Dataset name mouse id # trials # sessions data asset ID Task
disrnn_dataset_774212 774212 16184 31 ad5ec889-f4e0-45a2-802c-f843266d3cce Uncoupled Without Baiting
disrnn_dataset_779531 779531 7272 12 64fa1cb4-8af8-4d96-a965-3454d59439f6 Uncoupled Without Baiting
disrnn_dataset_781173 781173 8132 15 9788eb8d-ea88-4c60-bacc-1a23efd2f5e1 Uncoupled Without Baiting
disrnn_dataset_781162 781162 6417 12 8eaa487e-e78c-4635-b24b-eabe680a55ae Uncoupled Without Baiting
disrnn_dataset_778077 778077 8336 15 76fc65d3-eec4-4578-a20d-499193fc920e Uncoupled Without Baiting

The datasets can be combined to fit easily:

import pandas as pd
import aind_disrnn_utils.data_loader as dl

mice = [77412, 779531, 781173, 781162, 778077]
dfs = []
for mouse in mice:
    dfs.append(pd.read_csv('/data/disrnn_dataset_{}/disrnn_dataset.csv'.format(mouse)))
df = pd.concat(dfs)
dataset = dl.create_disrrn_dataset(df)

Saving results

After fitting the network, you can add the latent states and predictions back into the dataframe of trials:

df_trials = dl.add_model_results(df_trials, network_states.__array__(), yhat, ignore_policy=ignore_policy)

Installation

To install the software from PyPi

pip install aind-disrnn-utils

To use the software, in the root directory, run

pip install -e .

To develop the code, run

pip install -e . --group dev

Note: --group flag is available only in pip versions >=25.1

Alternatively, if using uv, run

uv sync

Level of Support

  • Occasional updates: We are planning on occasional updating this tool with no fixed schedule. Community involvement is encouraged through both issues and pull requests.

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

aind_disrnn_utils-0.0.16.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aind_disrnn_utils-0.0.16-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file aind_disrnn_utils-0.0.16.tar.gz.

File metadata

  • Download URL: aind_disrnn_utils-0.0.16.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aind_disrnn_utils-0.0.16.tar.gz
Algorithm Hash digest
SHA256 e12c0a9aee2f5902bb1b6ff6d2231618623d7aa10f288cf5035a96d1ba94124c
MD5 f62c6bda6084f258c0cef0ada1f4c94a
BLAKE2b-256 b1f29c59b87687f88851d4cfea6fa7954657986cd28462c5d59b3e40d84d1c11

See more details on using hashes here.

File details

Details for the file aind_disrnn_utils-0.0.16-py3-none-any.whl.

File metadata

File hashes

Hashes for aind_disrnn_utils-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 ca6ac510a744ecebd93253dcc4922c0733547d9cdb3890e30448bace388f9479
MD5 6e26b3081f3c2e35c6256c7252ab6d61
BLAKE2b-256 c79c54f0c50172fb8ba5aff2731fa8401e518b5a5af66c8ac6399caccca10f1d

See more details on using hashes here.

Supported by

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