elicito

A python package for learning prior distributions based on expert knowledge

https://github.com/florence-bockting/elicito

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.9%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

A python package for learning prior distributions based on expert knowledge

Basic Info
  • Host: GitHub
  • Owner: florence-bockting
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 1010 KB
Statistics
  • Stars: 12
  • Watchers: 3
  • Forks: 1
  • Open Issues: 8
  • Releases: 10
Created 12 months ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Citation

README.md

elicito: A Python package for expert prior elicitation

A Python package for learning prior distributions based on expert knowledge

Key info : DOI Docs Main branch: supported Python versions Licence

PyPI : PyPI PyPI install

Conda : Conda Conda platforms Conda install

Tests : CI Coverage

Other info : Last Commit Contributors

Status

  • development: the project is actively being worked on

Full documentation can be found at: elicito.readthedocs.io. We recommend reading the docs there because the internal documentation links don't render correctly on GitHub's viewer.

Installation

As a library

If you want to use elicito as a library, for example you want to use it as a dependency in another package/application that you're building, then we recommend installing the package with the commands below. <!--- This method provides the loosest pins possible of all dependencies. This gives you, the package/application developer, as much freedom as possible to set the versions of different packages. However, the tradeoff with this freedom is that you may install incompatible versions of Expert prior elicitation method's dependencies (we cannot test all combinations of dependencies, particularly ones which haven't been released yet!). Hence, you may run into installation issues. If you believe these are because of a problem in elicito, please raise an issue. --> The (non-locked) version of elicito can be installed with conda for macOS and Linux and with pip for Windows, macOS and Linux.

=== "conda"

```sh
# only for macOS and Linux
conda install conda-forge::elicito
```

=== "pip"

```sh
# for macOS, Linux, and Windows
pip install elicito
```

Additional dependencies can be installed using

=== "conda"

If you are installing with conda, we recommend
installing the extras by hand because there is no stable
solution yet (see [conda issue #7502](https://github.com/conda/conda/issues/7502))

=== "pip"

```sh
# To add all optional dependencies
pip install 'elicito[full]'

# To add plotting dependencies
pip install 'elicito[plots]'

# To add scipy dependency
pip install 'elicito[scipy]'

# To add pandas dependency
pip install 'elicito[pandas]'
```

For developers

For development, we rely on uv for all our dependency management. To get started, you will need to make sure that uv is installed (instructions here (we found that the self-managed install was best, particularly for upgrading uv later).

For all of our work, we use our Makefile. You can read the instructions out and run the commands by hand if you wish, but we generally discourage this because it can be error prone. In order to create your environment, run make virtual-environment.

If there are any issues, the messages from the Makefile should guide you through. If not, please raise an issue in the issue tracker.

For the rest of our developer docs, please see [development][development].

Older versions

  • v0.5.2: DOI
  • v0.3.1: DOI

Original template

This project was generated from this template: copier core python repository. copier is used to manage and distribute this template.

Owner

  • Name: Florence Bockting
  • Login: florence-bockting
  • Kind: user
  • Location: Dortmund
  • Company: University of Dortmund | Computational Statistics

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: elicito - A tool for expert prior elicitation
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Florence
    family-names: Bockting
    email: florence.bockting@tu-dortmund.de
    affiliation: TU Dortmund University
    orcid: 'https://orcid.org/0000-0003-0924-6413'
  - given-names: Paul-Christian
    family-names: Bürkner
    email: paul.buerkner@gmail.com
    affiliation: TU Dortmund University
    orcid: 'https://orcid.org/0000-0001-5765-8995'
repository-code: 'https://github.com/florence-bockting/elicito'
url: 'https://elicito.readthedocs.io/en/latest/'
abstract: >-
  A key challenge in Bayesian statistics is the
  specification of prior distributions for the model
  parameter. We focus in our work on the specification of
  prior distributions corresponding to expert knowledge. We
  develop a method that aims at learning prior distribution
  for the model parameter given expert knowledge about the
  outcome variable or other familiar quantities for a domain
  expert.
keywords:
  - expert knowledge elicitation
  - prior elicitation
  - sgd
  - normalizing-flow
  - prior distribution
  - Bayesian Statistics
license: Apache-2.0
version: 0.4.0

GitHub Events

Total
  • Create event: 56
  • Issues event: 5
  • Release event: 10
  • Watch event: 10
  • Delete event: 17
  • Issue comment event: 30
  • Push event: 209
  • Public event: 1
  • Pull request review comment event: 3
  • Pull request review event: 5
  • Pull request event: 28
Last Year
  • Create event: 56
  • Issues event: 5
  • Release event: 10
  • Watch event: 10
  • Delete event: 17
  • Issue comment event: 30
  • Push event: 209
  • Public event: 1
  • Pull request review comment event: 3
  • Pull request review event: 5
  • Pull request event: 28

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 4
  • Total pull requests: 16
  • Average time to close issues: N/A
  • Average time to close pull requests: about 8 hours
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.56
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 16
  • Average time to close issues: N/A
  • Average time to close pull requests: about 8 hours
  • Issue authors: 2
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.56
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • aloctavodia (3)
  • florence-bockting (1)
Pull Request Authors
  • florence-bockting (15)
  • aloctavodia (1)
Top Labels
Issue Labels
bug (3)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 144 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 11
  • Total maintainers: 1
pypi.org: elicito

A Python package for learning prior distributions based on expert knowledge

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 144 Last month
Rankings
Dependent packages count: 9.5%
Average: 31.4%
Dependent repos count: 53.4%
Maintainers (1)
Last synced: 6 months ago

Dependencies

.github/actions/setup/action.yml actions
  • astral-sh/setup-uv v4 composite
.github/workflows/bump.yaml actions
  • ./.github/actions/setup * composite
  • actions/checkout v4 composite
  • pdm-project/setup-pdm v4.1 composite
.github/workflows/ci.yaml actions
  • ./.github/actions/setup * composite
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • astral-sh/setup-uv v4 composite
  • codecov/codecov-action v4.2.0 composite
  • lycheeverse/lychee-action v2 composite
.github/workflows/deploy.yaml actions
  • actions/checkout v4 composite
  • astral-sh/setup-uv v4 composite
.github/workflows/install-pypi.yaml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
.github/workflows/release.yaml actions
  • actions/checkout v4 composite
  • astral-sh/setup-uv v4 composite
  • softprops/action-gh-release v2 composite
.github/workflows/test-upstream-latest.yaml actions
  • actions/checkout v4 composite
  • astral-sh/setup-uv v4 composite
pyproject.toml pypi
requirements-docs-locked.txt pypi
  • attrs ==24.3.0
  • babel ==2.16.0
  • certifi ==2024.12.14
  • charset-normalizer ==3.4.1
  • click ==8.1.8
  • colorama ==0.4.6
  • contourpy ==1.3.0
  • contourpy ==1.3.1
  • cycler ==0.12.1
  • fonttools ==4.56.0
  • ghp-import ==2.1.0
  • griffe ==1.5.4
  • idna ==3.10
  • importlib-metadata ==8.6.1
  • importlib-resources ==6.5.2
  • jinja2 ==3.1.5
  • kiwisolver ==1.4.7
  • kiwisolver ==1.4.8
  • markdown ==3.7
  • markupsafe ==3.0.2
  • matplotlib ==3.9.4
  • matplotlib ==3.10.1
  • mergedeep ==1.3.4
  • mkdocs ==1.6.1
  • mkdocs-autorefs ==1.2.0
  • mkdocs-gen-files ==0.5.0
  • mkdocs-get-deps ==0.2.0
  • mkdocs-literate-nav ==0.6.1
  • mkdocs-material ==9.5.49
  • mkdocs-material-extensions ==1.3.1
  • mkdocs-section-index ==0.3.9
  • mkdocstrings ==0.27.0
  • mkdocstrings-python ==1.13.0
  • mkdocstrings-python-xref ==1.6.2
  • numpy ==2.0.2
  • numpy ==2.2.3
  • packaging ==24.2
  • paginate ==0.5.7
  • pathspec ==0.12.1
  • pillow ==11.1.0
  • platformdirs ==4.3.6
  • pygments ==2.19.1
  • pymdown-extensions ==10.13
  • pyparsing ==3.2.1
  • python-dateutil ==2.9.0.post0
  • pyyaml ==6.0.2
  • pyyaml-env-tag ==0.1
  • regex ==2024.11.6
  • requests ==2.32.3
  • ruff ==0.8.6
  • six ==1.17.0
  • typing-extensions ==4.12.2
  • urllib3 ==2.3.0
  • watchdog ==6.0.0
  • zipp ==3.21.0
requirements-incl-optional-locked.txt pypi
  • contourpy ==1.3.0
  • contourpy ==1.3.1
  • cycler ==0.12.1
  • fonttools ==4.56.0
  • importlib-resources ==6.5.2
  • kiwisolver ==1.4.7
  • kiwisolver ==1.4.8
  • matplotlib ==3.9.4
  • matplotlib ==3.10.1
  • numpy ==2.0.2
  • numpy ==2.2.3
  • packaging ==24.2
  • pillow ==11.1.0
  • pyparsing ==3.2.1
  • python-dateutil ==2.9.0.post0
  • six ==1.17.0
  • zipp ==3.21.0
requirements-locked.txt pypi
requirements-only-tests-locked.txt pypi
  • colorama ==0.4.6 test
  • coverage ==7.6.10 test
  • exceptiongroup ==1.2.2 test
  • iniconfig ==2.0.0 test
  • packaging ==24.2 test
  • pluggy ==1.5.0 test
  • pytest ==8.3.4 test
  • pytest-cov ==6.0.0 test
  • tomli ==2.2.1 test
requirements-only-tests-min-locked.txt pypi
  • colorama ==0.4.6 test
  • exceptiongroup ==1.2.2 test
  • iniconfig ==2.0.0 test
  • packaging ==24.2 test
  • pluggy ==1.5.0 test
  • pytest ==8.3.4 test
  • tomli ==2.2.1 test
requirements-tmp.txt pypi
  • contourpy ==1.3.1
  • cycler ==0.12.1
  • fonttools ==4.56.0
  • kiwisolver ==1.4.8
  • matplotlib ==3.7.1
  • numpy ==2.2.3
  • packaging ==24.2
  • pillow ==11.1.0
  • pyparsing ==3.2.1
  • python-dateutil ==2.9.0.post0
  • six ==1.17.0
requirements-upstream-dev.txt pypi
uv.lock pypi
  • attrs 24.3.0
  • babel 2.16.0
  • certifi 2024.12.14
  • cfgv 3.4.0
  • charset-normalizer 3.4.1
  • click 8.1.8
  • colorama 0.4.6
  • contourpy 1.3.0
  • contourpy 1.3.1
  • coverage 7.6.10
  • cycler 0.12.1
  • distlib 0.3.9
  • elicito 0.1.0a1
  • exceptiongroup 1.2.2
  • filelock 3.16.1
  • fonttools 4.56.0
  • ghp-import 2.1.0
  • griffe 1.5.4
  • identify 2.6.5
  • idna 3.10
  • importlib-metadata 8.6.1
  • importlib-resources 6.5.2
  • iniconfig 2.0.0
  • jinja2 3.1.5
  • kiwisolver 1.4.7
  • kiwisolver 1.4.8
  • liccheck 0.9.2
  • markdown 3.7
  • markupsafe 3.0.2
  • matplotlib 3.9.4
  • matplotlib 3.10.1
  • mergedeep 1.3.4
  • mkdocs 1.6.1
  • mkdocs-autorefs 1.2.0
  • mkdocs-gen-files 0.5.0
  • mkdocs-get-deps 0.2.0
  • mkdocs-literate-nav 0.6.1
  • mkdocs-material 9.5.49
  • mkdocs-material-extensions 1.3.1
  • mkdocs-section-index 0.3.9
  • mkdocstrings 0.27.0
  • mkdocstrings-python 1.13.0
  • mkdocstrings-python-xref 1.6.2
  • mypy 1.14.0
  • mypy-extensions 1.0.0
  • nodeenv 1.9.1
  • numpy 2.0.2
  • numpy 2.2.3
  • packaging 24.2
  • paginate 0.5.7
  • pathspec 0.12.1
  • pillow 11.1.0
  • pip 24.3.1
  • platformdirs 4.3.6
  • pluggy 1.5.0
  • pre-commit 4.0.1
  • pygments 2.19.1
  • pymdown-extensions 10.13
  • pyparsing 3.2.1
  • pytest 8.3.4
  • pytest-cov 6.0.0
  • python-dateutil 2.9.0.post0
  • pyyaml 6.0.2
  • pyyaml-env-tag 0.1
  • regex 2024.11.6
  • requests 2.32.3
  • ruff 0.8.6
  • semantic-version 2.10.0
  • setuptools 75.6.0
  • six 1.17.0
  • toml 0.10.2
  • tomli 2.2.1
  • towncrier 24.8.0
  • typing-extensions 4.12.2
  • urllib3 2.3.0
  • virtualenv 20.28.1
  • watchdog 6.0.0
  • zipp 3.21.0