Skip to main content

npc_lims

neuropixels cloud lab information management system Tools to fetch and update paths, metadata and state for Mindscope Neuropixels sessions, in the cloud.

PyPI Python version

Coverage CI/CD GitHub issues

quickstart

  • make a new Python >=3.9 virtual environment with conda or venv (lighter option, since this package does not require pandas, numpy etc.):

    python -m venv .venv
    
  • activate the virtual environment:

    • Windows
    .venv\scripts\activate
    
    • Unix
    source .venv/bin/activate.sh
    
  • install the package:

    python -m pip install npc_lims
    
  • setup credentials

    • required environment variables:
      • AWS S3
        • AWS_DEFAULT_REGION
        • AWS_ACCESS_KEY_ID
        • AWS_SECRET_ACCESS_KEY
        • to find and read files on S3
        • must have read access on relevant aind buckets
        • can be in a standard ~/.aws location, as used by AWS CLI or boto3
      • CodeOcean API
        • CODE_OCEAN_API_TOKEN
        • CODE_OCEAN_DOMAIN
        • to find processed data in "data assets" via the Codeocean API
        • generated in CodeOcean:
          • right click on Account (bottom left, person icon)
          • click User Secrets - these are secrets than can be made available as environment variables in CodeOcean capsules
          • go to Access Tokens and click Generate new token - this is for programatically querying CodeOcean's databases
            • in Token Name enter Codeocean API (read) and check read on capsules and datasets
            • a token will be generated: click copy (storing it in a password manager, if you use one)
          • head back to User Secrets where we'll paste it into a new secret via Add secret > API credentials - in description enter Codeocean API (read) - in API key enter CODE_OCEAN_API_KEY - in API secret paste the copied secret from before (should start with cop_...) CODE_OCEAN_DOMAIN is the codeocean https address, up to and including .org
    • environment variables can also be specified in a file named .env in the current working directory
  • now in Python we can find sessions that are available to work with:

        >>> import npc_lims;
    
    # get a sequence of `SessionInfo` dataclass instances, one per session:
        >>> tracked_sessions: tuple[npc_lims.SessionInfo, ...] = npc_lims.get_session_info()
    
    # each `SessionInfo` instance has minimal metadata about its session:
        >>> tracked_sessions[0]                 # doctest: +SKIP
        npc_lims.SessionInfo(id='626791_2022-08-15', subject=626791, date='2022-08-15', idx=0, project='DRPilotSession', is_ephys=True, is_sync=True, allen_path=PosixUPath('//allen/programs/mindscope/workgroups/dynamicrouting/PilotEphys/Task 2 pilot/DRpilot_626791_20220815'))
            >>> tracked_sessions[0].is_ephys        # doctest: +SKIP
        False
    
    # currently, we're only tracking behavior and ephys sessions that use variants of https://github.com/samgale/DynamicRoutingTask/blob/main/TaskControl.py:
        >>> all(s.date.year >= 2022 for s in tracked_sessions)
        True
    
  • "tracked sessions" are discovered via 3 routes:

Download files

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

Source Distribution

npc_lims-0.1.194.tar.gz (40.7 kB view details)

Uploaded Source

Built Distribution

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

npc_lims-0.1.194-py3-none-any.whl (47.1 kB view details)

Uploaded Python 3

File details

Details for the file npc_lims-0.1.194.tar.gz.

File metadata

  • Download URL: npc_lims-0.1.194.tar.gz
  • Upload date:
  • Size: 40.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for npc_lims-0.1.194.tar.gz
Algorithm Hash digest
SHA256 78d5c5e117cfd5bb95735e0c1c8b6b65fb7ee4bb879d0c6c0d28fac0f4691157
MD5 1844bb3a3f6e339d3506de44a8a57474
BLAKE2b-256 826bf99f4f2a4116be65694756540edcc41add5c07409f3bb93e91143a958fbe

See more details on using hashes here.

File details

Details for the file npc_lims-0.1.194-py3-none-any.whl.

File metadata

  • Download URL: npc_lims-0.1.194-py3-none-any.whl
  • Upload date:
  • Size: 47.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for npc_lims-0.1.194-py3-none-any.whl
Algorithm Hash digest
SHA256 87f5bb0df11b1c5a3b2d5abb1e52f54b312c9a2d0322138abffeedd83a455c43
MD5 63af524c2249b428a321fd598712fdfb
BLAKE2b-256 abfbf0384551824b9b94fd5b1352704d08a664169d406281e2e7a82be9a39529

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.198

2 files

0.1.197

2 files

0.1.196

2 files

0.1.195

2 files

This release

0.1.194 This release

2 files

0.1.193

2 files

0.1.192

2 files

0.1.191

2 files

0.1.190

2 files

0.1.189

2 files

0.1.188

2 files

0.1.187

2 files

0.1.186

2 files

0.1.185

2 files

0.1.184

2 files

0.1.183

2 files

0.1.182

2 files

0.1.181

2 files

0.1.180

2 files

0.1.179

2 files

0.1.178

2 files

0.1.177

2 files

0.1.176

2 files

0.1.175

2 files

0.1.174

2 files

0.1.173

2 files

0.1.172

2 files

0.1.171

2 files

0.1.170

2 files

0.1.169

2 files

0.1.168

2 files

0.1.167

2 files

0.1.166

2 files

0.1.165

2 files

0.1.164

2 files

0.1.163

2 files

0.1.162

2 files

0.1.161

2 files

0.1.160

2 files

0.1.159

2 files

0.1.158

2 files

0.1.157

2 files

0.1.156

2 files

0.1.155

2 files

0.1.154

2 files

0.1.153

2 files

0.1.152

2 files

0.1.151

2 files

0.1.150

2 files

0.1.149

2 files

0.1.148

2 files

0.1.147

2 files

0.1.146

2 files

0.1.145

2 files

0.1.144

2 files

0.1.143

2 files

0.1.142

2 files

0.1.141

2 files

0.1.140

2 files

0.1.139

2 files

0.1.138

2 files

0.1.137

2 files

0.1.136

2 files

0.1.135

2 files

0.1.134

2 files

0.1.133

2 files

0.1.132

2 files

0.1.131

2 files

0.1.130

2 files

0.1.129

2 files

0.1.128

2 files

0.1.127

2 files

0.1.126

2 files

0.1.125

2 files

0.1.124

2 files

0.1.123

1 file

0.1.122

2 files

0.1.121

1 file

0.1.120

2 files

0.1.119

2 files

0.1.118

2 files

0.1.117

2 files

0.1.116

2 files

0.1.115

2 files

0.1.114

2 files

0.1.113

2 files

0.1.112

2 files

0.1.111

2 files

0.1.110

2 files

0.1.109

2 files

0.1.108

2 files

0.1.107

2 files

0.1.106

2 files

0.1.105

2 files

0.1.104

2 files

0.1.103

2 files

0.1.102

2 files

0.1.101

2 files

0.1.100

2 files

0.1.99

2 files

0.1.98

2 files

0.1.97

2 files

0.1.96

2 files

0.1.95

2 files

0.1.94

2 files

0.1.93

2 files

0.1.92

2 files

0.1.91

2 files

0.1.90

2 files

0.1.89

2 files

0.1.88

2 files

0.1.87

2 files

0.1.86

2 files

0.1.85

2 files

0.1.84

2 files

0.1.83

2 files

0.1.82

2 files

0.1.81

2 files

0.1.80

2 files

0.1.79

2 files

0.1.78

2 files

0.1.77

2 files

0.1.76

2 files

0.1.75

2 files

0.1.74

2 files

0.1.73

2 files

0.1.72

2 files

0.1.71

2 files

0.1.70

2 files

0.1.69

2 files

0.1.68

2 files

0.1.67

2 files

0.1.66

2 files

0.1.65

2 files

0.1.64

2 files

0.1.63

2 files

0.1.62

2 files

0.1.61

2 files

0.1.60

2 files

0.1.59

2 files

0.1.58

2 files

0.1.57

2 files

0.1.56

2 files

0.1.55

2 files

0.1.54

2 files

0.1.53

2 files

0.1.52

2 files

0.1.51

2 files

0.1.50

2 files

0.1.49

2 files

0.1.48

2 files

0.1.47

2 files

0.1.46

2 files

0.1.45

2 files

0.1.44

2 files

0.1.43

2 files

0.1.42

2 files

0.1.41

2 files

0.1.40

2 files

0.1.39

2 files

0.1.38

2 files

0.1.37

2 files

0.1.36

2 files

0.1.35

2 files

0.1.34

2 files

0.1.33

2 files

0.1.32

2 files

0.1.31

2 files

0.1.30

2 files

0.1.29

2 files

0.1.28

2 files

0.1.27

2 files

0.1.26

2 files

0.1.25

2 files

0.1.24

2 files

0.1.23

2 files

0.1.22

2 files

0.1.21

2 files

0.1.20

2 files

0.1.19

2 files

0.1.18

2 files

0.1.17

2 files

0.1.16

2 files

0.1.15

2 files

0.1.14

2 files

0.1.13

2 files

0.1.12

2 files

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page