Name | lyscripts JSON |
Version |
0.7.3
JSON |
| download |
home_page | |
Summary | Package containing scripts used in lynference pipelines |
upload_time | 2023-08-29 11:51:59 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.8 |
license | MIT |
keywords |
scripts
lymph
inference
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<img src="https://raw.githubusercontent.com/rmnldwg/lyscripts/main/github-social-card.png" alt="social card" style="width:830px;"/>
[![MIT license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](https://github.com/rmnldwg/lyscripts/blob/main/LICENSE)
[![GitHub repo](https://img.shields.io/badge/rmnldwg%2Flymph-grey.svg?style=flat&logo=github)](https://github.com/rmnldwg/lyscripts)
[![build badge](https://github.com/rmnldwg/lyscripts/actions/workflows/build.yml/badge.svg?style=flat)](https://pypi.org/project/lyscripts/)
[![docs badge](https://github.com/rmnldwg/lyscripts/actions/workflows/docs.yml/badge.svg?style=flat)](https://rmnldwg.github.io/lyscripts/)
[![tests badge](https://github.com/rmnldwg/lyscripts/actions/workflows/tests.yml/badge.svg?style=flat)](https://rmnldwg.github.io/lyscripts/)
## 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`](https://github.com/rmnldwg/lymph) library.
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`](https://github.com/rmnldwg/lynference), where we store the pipelines that produce(d) our published results in a persistent way. Head over there to learn more about how to reproduce our work.
## Installation
These scripts can be installed via `pip`:
```bash
pip install lyscripts
```
or installed from source by cloning this repo
```bash
git clone https://github.com/rmnldwg/lyscripts.git
cd lyscripts
pip install .
```
## Usage
After installing the package, run `lyscripts --help` to see the following output:
```
USAGE: lyscripts [-h] [-v]
{app,data,evaluate,plot,predict,sample,temp_schedule} ...
Utility for performing common tasks w.r.t. the inference and prediction tasks one
can use the `lymph` package for.
POSITIONAL ARGUMENTS:
{app,data,evaluate,plot,predict,sample,temp_schedule}
app Module containing scripts to run different `streamlit`
applications.
data Provide a range of commands related to datasets on
patterns of lymphatic progression. Currently, the
following modules provide additional commands: 1. The
`lyscripts.data.clean` module that converts a LyProX-style
table of patient information into a simplified format that
is used by the `lymph` model. 2. `lyscripts.data.enhance`,
a module for computing consensus diagnoses and to ensure
that super- and sublevels are consistently reported. 3.
The module `lyscripts.data.generate` for creating
synthetic datasets with certain characteristics. 4.
Submodule `lyscripts.data.join` to concatenate two
datasets, e.g. from different institutions. 5.
`lyscripts.data.split`, a module with which datasets may
be split into random sets of patient data. The split data
may then be used e.g. for cross-validation.
evaluate Evaluate the performance of the trained model by computing
quantities like the Bayesian information criterion (BIC)
or (if thermodynamic integration was performed) the actual
evidence (with error) of the model.
plot Provide various plotting utilities for displaying results
of e.g. the inference or prediction process. At the
moment, three subcommands are grouped under
`lyscripts.plot`: 1. `lyscripts.plot.corner`, which simply
outputs a corner plot with nice labels for a set of drawn
samples. 2. The module `lyscripts.plot.histograms` can be
used to draw histograms, e.g. the ones over risks and
prevalences as computed by the `lyscripts.predict` module.
3. Module `lyscripts.plot.thermo_int` allows comparing
rounds of thermodynamic integration for different models.
predict This module provides functions and scripts to predict the
risk of hidden involvement, given observed diagnoses, and
prevalences of patterns for diagnostic modalities. The
submodules for prediction are currently: 1. The
`lyscripts.predict.prevalences` module for computing
prevalences of certain involvement patterns that may also
be compared to observed prevalences. 2. A module
`lyscripts.predict.risks` for predicting the risk of any
specific pattern of involvement given any particular
diagnosis.
sample Learn the spread probabilities of the HMM for lymphatic
tumor progression using the preprocessed data as input and
MCMC as sampling method. This is the central script
performing for our project on modelling lymphatic spread
in head & neck cancer. We use it for model comparison via
the thermodynamic integration functionality and use the
sampled parameter estimates for risk predictions. This
risk estimate may in turn some day guide clinicians to
make more objective decisions with respect to defining the
*elective clinical target volume* (CTV-N) in radiotherapy.
temp_schedule Generate inverse temperature schedules for thermodynamic
integration using various different methods. Thermodynamic
integration is quite sensitive to the specific schedule
which is used. I noticed in my models, that within the
interval $[0, 0.1]$, the increase in the expected
log-likelihood is very steep. Hence, the inverse
temparature $\beta$ must be more densely spaced in the
beginning. This can be achieved by using a power sequence:
Generate $n$ linearly spaced points in the interval $[0,
1]$ and then transform each point by computing $\beta_i^k$
where $k$ could e.g. be 5.
OPTIONAL ARGUMENTS:
-h, --help show this help message and exit
-v, --version Display the version of lyscripts (default: False)
```
Each of the individual subcommands provides a help page like this respectively that detail the positional and optional arguments along with their function.
Raw data
{
"_id": null,
"home_page": "",
"name": "lyscripts",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "scripts,lymph,inference",
"author": "",
"author_email": "Roman Ludwig <roman.ludwig@usz.ch>",
"download_url": "https://files.pythonhosted.org/packages/1e/17/9bae7d8615e2034ea494e523f6eaf649efe2e6e005e46af15926a544f690/lyscripts-0.7.3.tar.gz",
"platform": null,
"description": "<img src=\"https://raw.githubusercontent.com/rmnldwg/lyscripts/main/github-social-card.png\" alt=\"social card\" style=\"width:830px;\"/>\n\n[![MIT license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](https://github.com/rmnldwg/lyscripts/blob/main/LICENSE)\n[![GitHub repo](https://img.shields.io/badge/rmnldwg%2Flymph-grey.svg?style=flat&logo=github)](https://github.com/rmnldwg/lyscripts)\n[![build badge](https://github.com/rmnldwg/lyscripts/actions/workflows/build.yml/badge.svg?style=flat)](https://pypi.org/project/lyscripts/)\n[![docs badge](https://github.com/rmnldwg/lyscripts/actions/workflows/docs.yml/badge.svg?style=flat)](https://rmnldwg.github.io/lyscripts/)\n[![tests badge](https://github.com/rmnldwg/lyscripts/actions/workflows/tests.yml/badge.svg?style=flat)](https://rmnldwg.github.io/lyscripts/)\n\n## What are these `lyscripts`?\n\nThis 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`](https://github.com/rmnldwg/lymph) library.\n\nWe 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`](https://github.com/rmnldwg/lynference), where we store the pipelines that produce(d) our published results in a persistent way. Head over there to learn more about how to reproduce our work.\n\n## Installation\n\nThese scripts can be installed via `pip`:\n\n```bash\npip install lyscripts\n```\n\nor installed from source by cloning this repo\n\n```bash\ngit clone https://github.com/rmnldwg/lyscripts.git\ncd lyscripts\npip install .\n```\n\n## Usage\n\nAfter installing the package, run `lyscripts --help` to see the following output:\n\n```\nUSAGE: lyscripts [-h] [-v]\n {app,data,evaluate,plot,predict,sample,temp_schedule} ...\n\nUtility for performing common tasks w.r.t. the inference and prediction tasks one\ncan use the `lymph` package for.\n\nPOSITIONAL ARGUMENTS:\n {app,data,evaluate,plot,predict,sample,temp_schedule}\n app Module containing scripts to run different `streamlit`\n applications.\n data Provide a range of commands related to datasets on\n patterns of lymphatic progression. Currently, the\n following modules provide additional commands: 1. The\n `lyscripts.data.clean` module that converts a LyProX-style\n table of patient information into a simplified format that\n is used by the `lymph` model. 2. `lyscripts.data.enhance`,\n a module for computing consensus diagnoses and to ensure\n that super- and sublevels are consistently reported. 3.\n The module `lyscripts.data.generate` for creating\n synthetic datasets with certain characteristics. 4.\n Submodule `lyscripts.data.join` to concatenate two\n datasets, e.g. from different institutions. 5.\n `lyscripts.data.split`, a module with which datasets may\n be split into random sets of patient data. The split data\n may then be used e.g. for cross-validation.\n evaluate Evaluate the performance of the trained model by computing\n quantities like the Bayesian information criterion (BIC)\n or (if thermodynamic integration was performed) the actual\n evidence (with error) of the model.\n plot Provide various plotting utilities for displaying results\n of e.g. the inference or prediction process. At the\n moment, three subcommands are grouped under\n `lyscripts.plot`: 1. `lyscripts.plot.corner`, which simply\n outputs a corner plot with nice labels for a set of drawn\n samples. 2. The module `lyscripts.plot.histograms` can be\n used to draw histograms, e.g. the ones over risks and\n prevalences as computed by the `lyscripts.predict` module.\n 3. Module `lyscripts.plot.thermo_int` allows comparing\n rounds of thermodynamic integration for different models.\n predict This module provides functions and scripts to predict the\n risk of hidden involvement, given observed diagnoses, and\n prevalences of patterns for diagnostic modalities. The\n submodules for prediction are currently: 1. The\n `lyscripts.predict.prevalences` module for computing\n prevalences of certain involvement patterns that may also\n be compared to observed prevalences. 2. A module\n `lyscripts.predict.risks` for predicting the risk of any\n specific pattern of involvement given any particular\n diagnosis.\n sample Learn the spread probabilities of the HMM for lymphatic\n tumor progression using the preprocessed data as input and\n MCMC as sampling method. This is the central script\n performing for our project on modelling lymphatic spread\n in head & neck cancer. We use it for model comparison via\n the thermodynamic integration functionality and use the\n sampled parameter estimates for risk predictions. This\n risk estimate may in turn some day guide clinicians to\n make more objective decisions with respect to defining the\n *elective clinical target volume* (CTV-N) in radiotherapy.\n temp_schedule Generate inverse temperature schedules for thermodynamic\n integration using various different methods. Thermodynamic\n integration is quite sensitive to the specific schedule\n which is used. I noticed in my models, that within the\n interval $[0, 0.1]$, the increase in the expected\n log-likelihood is very steep. Hence, the inverse\n temparature $\\beta$ must be more densely spaced in the\n beginning. This can be achieved by using a power sequence:\n Generate $n$ linearly spaced points in the interval $[0,\n 1]$ and then transform each point by computing $\\beta_i^k$\n where $k$ could e.g. be 5.\n\nOPTIONAL ARGUMENTS:\n -h, --help show this help message and exit\n -v, --version Display the version of lyscripts (default: False)\n```\n\nEach of the individual subcommands provides a help page like this respectively that detail the positional and optional arguments along with their function.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Package containing scripts used in lynference pipelines",
"version": "0.7.3",
"project_urls": {
"documentation": "https://rmnldwg.github.io/lyscripts",
"source": "https://github.com/rmnldwg/lyscripts"
},
"split_keywords": [
"scripts",
"lymph",
"inference"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e38eb38f88b90c0ea04080df65ffd296e20313a3c3c50a6bf479ef942ee97322",
"md5": "7153923714cf62ada5421a9ea05a127d",
"sha256": "cf75a0080cf72e64d98ab3ec7b7faba9848513e0f5bb657d261562376a7370f3"
},
"downloads": -1,
"filename": "lyscripts-0.7.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7153923714cf62ada5421a9ea05a127d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 65524,
"upload_time": "2023-08-29T11:51:57",
"upload_time_iso_8601": "2023-08-29T11:51:57.573076Z",
"url": "https://files.pythonhosted.org/packages/e3/8e/b38f88b90c0ea04080df65ffd296e20313a3c3c50a6bf479ef942ee97322/lyscripts-0.7.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1e179bae7d8615e2034ea494e523f6eaf649efe2e6e005e46af15926a544f690",
"md5": "f4dd4a8d24bfd0b0e75b5ee055f49a9c",
"sha256": "f0d158019c850453eff24cfa8f7ac285e82ab279c06aad1c437405f8b5f483ed"
},
"downloads": -1,
"filename": "lyscripts-0.7.3.tar.gz",
"has_sig": false,
"md5_digest": "f4dd4a8d24bfd0b0e75b5ee055f49a9c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 335217,
"upload_time": "2023-08-29T11:51:59",
"upload_time_iso_8601": "2023-08-29T11:51:59.699525Z",
"url": "https://files.pythonhosted.org/packages/1e/17/9bae7d8615e2034ea494e523f6eaf649efe2e6e005e46af15926a544f690/lyscripts-0.7.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-29 11:51:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "rmnldwg",
"github_project": "lyscripts",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "lyscripts"
}