Skip to main content

Lightweight design of plate-based experiments

Project description

Install

pip install skittle-sheets

To access private Google Sheets, generate a service account and JSON key file following https://cloud.google.com/iam/docs/creating-managing-service-account-keys

Place the JSON key file in the working directory, a parent directory, your home directory, or ~/config/skittle. Make sure the filename matches *service*.json (e.g,. move it to ~/config/.skittle_service.json).

Format and examples

layout and longform output

There are three meaningful blocks that are automatically extracted from the layout based on location. Any other content is ignored, so it's OK to put notes wherever you like.

  1. Key value pairs, like experiment: <experiment_name>. These must be at the top left of the sheet.
  2. Variable definitions. Each must be an Oklahoma-shaped region in the first three columns (variable name, value, and code).
  3. Grids mapping variables onto plates. The grid can be anywhere, but the spacing between variable name and row/column labels is important. Fill out the plate with codes (empty cells are OK). Plates labels can be listed after a semicolon (a grid with no plate label applies to all plates).

Here are (some examples)[https://docs.google.com/spreadsheets/d/1UVDRgs1w6fySZqJqEbEH1v7m1i0qhhpQ_r9Y59TZ8tU/edit#gid=968744084]:

# example A
skittle export https://docs.google.com/spreadsheets/d/1UVDRgs1w6fySZqJqEbEH1v7m1i0qhhpQ_r9Y59TZ8tU/edit#gid=968744084
# example B (shown above)
skittle export https://docs.google.com/spreadsheets/d/1UVDRgs1w6fySZqJqEbEH1v7m1i0qhhpQ_r9Y59TZ8tU/edit#gid=767021684
# example C
skittle export https://docs.google.com/spreadsheets/d/1UVDRgs1w6fySZqJqEbEH1v7m1i0qhhpQ_r9Y59TZ8tU/edit#gid=1432994532

Usage

Public Google Sheets

skittle export <URL>

Private Google Sheets

Share your Google Sheets document with the service account generated above (read-only is fine). Then run:

skittle export "<spreadsheet>/<worksheet>"

If the Drive and Sheets APIs are not already enabled, there will be an error message with a link prompting you to enable them.

Local .csv file

skittle export layout.csv

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

skittle-sheets-0.0.5.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

skittle_sheets-0.0.5-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file skittle-sheets-0.0.5.tar.gz.

File metadata

  • Download URL: skittle-sheets-0.0.5.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for skittle-sheets-0.0.5.tar.gz
Algorithm Hash digest
SHA256 7cd1babed5b1a4d60fb392835ad1fab776e3f2dd1b3d423b6abdd7d167b6091a
MD5 411338267bf3fcda0bb85e3e159fa193
BLAKE2b-256 fd6262cd411df8f9417671b3c533e6852a7d5c6469c27286bece285389cacd74

See more details on using hashes here.

File details

Details for the file skittle_sheets-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for skittle_sheets-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5e68022af68ddb39d2d9502d7d6db4f966503c90014884e930b51ee0a7d0b041
MD5 dceeee99bbbc12f367d67c786ec3e8f1
BLAKE2b-256 4401e5f6aa0cf5c27df4ff8ba11dd16eb0b96c6091d72e6c8ee4463c4bfd7ee5

See more details on using hashes here.

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