Skip to main content

Generated from aind-library-template

Project description

ZOMBIE Squirrel

License Code Style semantic-release: angular Interrogate Coverage Python

Logo (image from ChatGPT)

zombie-squirrel is a set of one-line functions that handle the entire process of caching and retrieving data (and metadata) from AIND data assets.

In the background, the ZOMBIE squirrel repackages data/metadata into dataframes and stores them on S3 in a flat bucket, or in memory for testing.

Installation

pip install zombie-squirrel

Usage

Set backend

export FOREST_TYPE='S3'

Options are 'S3', 'MEMORY'.

Scurry (fetch) data

from zombie_squirrel import unique_project_names

project_names = unique_project_names()

Acorns

get_squirrel_info returns the following information about all available acorns:

Acorn Description Location Type Partitioned Columns
unique_project_names Unique project names across all assets s3://allen-data-views/data-asset-cache/zs_unique_project_names.pqt metadata False project_name
unique_subject_ids Unique subject_ids across all assets s3://allen-data-views/data-asset-cache/zs_unique_subject_ids.pqt metadata False subject_id
asset_basics Commonly used asset metadata, one row per data asset s3://allen-data-views/data-asset-cache/zs_asset_basics.pqt metadata False _id, _last_modified, modalities, project_name, data_level, subject_id, acquisition_start_time, acquisition_end_time, code_ocean, process_date, genotype, location, name, experimenters, instrument_id
source_data Mapping from derived asset names to their source raw asset names s3://allen-data-views/data-asset-cache/zs_source_data.pqt metadata False name, source_data, pipeline_name, processing_time
quality_control Quality control table with one row per QC metric s3://allen-data-views/data-asset-cache/zs_qc/ asset True (by subject_id) name, stage, modality, value, status, asset_name
assets_smartspim SmartSPIM assets with processing status and neuroglancer links s3://allen-data-views/data-asset-cache/zs_assets_smartspim.pqt metadata False subject_id, genotype, institution, acquisition_start_time, processing_end_time, stitched_link, processed, name, channel_1, segmentation_link_1, quantification_link_1, channel_2, segmentation_link_2, quantification_link_2, channel_3, segmentation_link_3, quantification_link_3

The raw_to_derived function is not a table stored in S3, instead it is used by passing an asset_name (or list of asset names) and a modality. The function returns the latest derived asset matching the requested pattern.

Custom acorn

The custom function allows you to store and retrieve your own user-defined DataFrames in the cache by name. This requires write authentication to the active backend.

from zombie_squirrel import custom
import pandas as pd

df = pd.DataFrame({"col": [1, 2, 3]})
custom("my_data", df)

retrieved_df = custom("my_data")

Hide all the acorns

We run a nightly capsule on Code Ocean with this code to hide all acorns (not the custom ones).

from zombie_squirrel.sync import hide_acorns
hide_acorns()

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

zombie_squirrel-0.18.1.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

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

zombie_squirrel-0.18.1-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file zombie_squirrel-0.18.1.tar.gz.

File metadata

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

File hashes

Hashes for zombie_squirrel-0.18.1.tar.gz
Algorithm Hash digest
SHA256 0f5525da9c55c8ddfa2fe427e83f13978eb979e85192e2f5a4e6641cb3bcba0e
MD5 310b3d983e1c4f0c10af685504f046e8
BLAKE2b-256 c344d5c507d7904f5a04c983e3d3ff6a14a349d151548f8094e238b86b6bb1f5

See more details on using hashes here.

File details

Details for the file zombie_squirrel-0.18.1-py3-none-any.whl.

File metadata

File hashes

Hashes for zombie_squirrel-0.18.1-py3-none-any.whl
Algorithm Hash digest
SHA256 30a1b1caa56da36511b165610e51146b7c27716506e4b3194992b22468c8edb8
MD5 9ffcb34c1982c7b7796dd72607cce0ff
BLAKE2b-256 300b81c8fca79e5b8e0020d2ce2a36ac053ffca4895fe8f349330f421f25f290

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