Package containing scripts used in lynference pipelines


Keywords
scripts, lymph, inference, cancer, cli, machine-learning, python
License
MIT
Install
pip install lyscripts==1.0.0rc3

Documentation

social card

MIT license GitHub repo build badge docs badge tests badge Coverage badge

What are these lyscripts?

This package provides convenient scripts for performing inference and learning regarding the lymphatic spread of head & neck cancer. Essentially, it provides a command line interface (CLI) to the lymph library and the lydata repository that stores lymphatic progression data.

We are making these "convenience" scripts public, because doing so is one necessary requirement to making our research easily and fully reproducible. There exists another repository, lynference, where we stored the pipelines that produced our published results in a persistent way.

Installation

These scripts can be installed via pip:

pip install lyscripts

or installed from source by cloning this repo

git clone https://github.com/lycosystem/lyscripts.git
cd lyscripts
pip install .

Usage

This package is intended to be mainly used as a collection of Python scripts that would be scattered throughout my projects, if I didn't bundle them here. Hence, they're mostly command line tools that do basic and repetitive stuff.

As a Command Line Tool

Simply run

lyscripts --help

in your terminal and let the output guide you through the functions of the program.

You can also refer to the documentation for a written-down version of all these help texts and even more context on how and why to use the provided commands.

As a Library

Head over to the documentation for more information on the individual modules, classes, and functions that are implemented in this package.

Configuration YAML Schema

Most of the CLI commands allow passing a list of --configs in the form of YAML files. If for a particular CLI argument no value is passed directly, the program looks for the corresponding value in the merged YAML files (if multiple files are provided, later ones may overwrite earlier ones).

For these YAML files we provide a unified schema containing all possible fields that any of the CLIs may accept. It is located at schemas/ly.json in this repository. So, one could configure e.g. VS Code to consider this schema for all *.ly.yaml files. Here is how that could look like in the JSON settings of VS Code:

{
    "yaml.schemas": {
        "https://raw.githubusercontent.com/lycosystem/lyscripts/main/schemas/ly.json": "*.ly.yaml"
    }
}

Subsequently, all files ending in .ly.yaml will have helpful autocompletion on the allowed/expected types available.