Skip to main content

Package to perform Slice Tensor Component Analysis

Project description

SliceTCA

This library provides tools to perform sliceTCA.


Installation

pip install slicetca

Full documentation

The full documentation can be found here.

Examples

Quick example

import slicetca
import torch
from matplotlib import pyplot as plt

device = ('cuda' if torch.cuda.is_available() else 'cpu')

# your_data is a numpy array of shape (trials, neurons, time).
data = torch.tensor(your_data, dtype=torch.float, device=device)

# The tensor is decomposed into 2 trial-, 0 neuron- and 3 time-slicing components.
components, model = slicetca.decompose(data, (2,0,3))

# For a not positive decomposition, we apply uniqueness constraints
model = slicetca.invariance(model)

slicetca.plot(model)

plt.show()

Notebook

See the example notebook for an application of sliceTCA to publicly available neural data.

Open In Colab

Reference

A. Pellegrino@, H. Stein, N. A. Cayco-Gaijc@. (2024). Dimensionality reduction beyond neural subspaces with slice tensor component analysis. Nature Neuroscience https://www.nature.com/articles/s41593-024-01626-2.

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

slicetca-1.0.0.tar.gz (17.8 kB view hashes)

Uploaded Source

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