Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

YAML file for grouping PEtab files #183

Merged
merged 15 commits into from Dec 16, 2019
Merged

YAML file for grouping PEtab files #183

merged 15 commits into from Dec 16, 2019

Conversation

dweindl
Copy link
Member

@dweindl dweindl commented Dec 15, 2019

Closes #49

  • Validation of contents (e.g. files exist)
  • petab.Problem from yaml
  • Adapt schema to multiple measurement files
  • Use in petablint
  • Implement petab.CompositeProblem
  • Multiple measurement files for petab.Problem (only in from_files, merge during loading)

To be done, but out of scope here:

  • Add more human-readable format description
  • Visualization files?
  • Implement mapping functions for CompositeProblem
  • Implement validation functions for CompositeProblem
  • Option to specify training and validation data in YAML?

dweindl added a commit to LeonardSchmiester/Benchmark-Models that referenced this pull request Dec 15, 2019
@codecov-io
Copy link

codecov-io commented Dec 15, 2019

Codecov Report

Merging #183 into develop will decrease coverage by 2.14%.
The diff coverage is 41.66%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #183      +/-   ##
===========================================
- Coverage     71.2%   69.05%   -2.15%     
===========================================
  Files           16       18       +2     
  Lines         1153     1241      +88     
  Branches       262      280      +18     
===========================================
+ Hits           821      857      +36     
- Misses         285      335      +50     
- Partials        47       49       +2
Impacted Files Coverage Δ
petab/visualize/helper_functions.py 95.8% <ø> (ø) ⬆️
petab/core.py 90.9% <ø> (ø) ⬆️
petab/petablint.py 0% <0%> (ø) ⬆️
petab/sampling.py 85% <100%> (ø) ⬆️
petab/measurements.py 81.44% <100%> (+1.44%) ⬆️
petab/problem.py 63.3% <26.66%> (-6.49%) ⬇️
petab/composite_problem.py 43.47% <43.47%> (ø)
petab/yaml.py 52.63% <52.63%> (ø)
petab/lint.py 50.71% <75%> (-0.7%) ⬇️
... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update db37dc5...e9d65de. Read the comment docs.

@dweindl
Copy link
Member Author

dweindl commented Dec 15, 2019

@yannikschaelte : How do we want to handle problems with multiple models with petab.Problem? Either we change the structure there, which will require a load of downstream changes, or we introduce something like petab.CompositeProblem, that manages a bunch of petab.Problems. Not completely sure, but I think I prefer the latter, as the default still seems to be having only one model.

@yannikschaelte
Copy link
Member

@yannikschaelte : How do we want to handle problems with multiple models with petab.Problem? Either we change the structure there, which will require a load of downstream changes, or we introduce something like petab.CompositeProblem, that manages a bunch of petab.Problems. Not completely sure, but I think I prefer the latter, as the default still seems to be having only one model.

I would agree to keep the single-anything petab.Problem, since that will remain the default, and have a petab.CompositeProblem in addition. However, it won't just hold a list of petab.Problems, but need to overwrite/aggregate the single functions that the Problem offers in different ways, if we have e.g. just one parameters file.
Whether to generate a Problem or CompositeProblem could easily be automatized when reading in the yaml.

dweindl and others added 2 commits December 16, 2019 10:15
* petab.CompositeProblem
* Add from_yaml() to petab.CompositeProblem and petab.Problem
* extend petab.Problem for use with multiple measurement files
* Cleanup
* Adapt petablint for use with yaml file
Copy link
Member

@yannikschaelte yannikschaelte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some comments on the yaml.

doc/documentation_data_format.md Show resolved Hide resolved
doc/documentation_data_format.md Outdated Show resolved Hide resolved
petab/composite_problem.py Outdated Show resolved Hide resolved
petab/petab_schema.yaml Show resolved Hide resolved
petab/petab_schema.yaml Show resolved Hide resolved
petab/petab_schema.yaml Outdated Show resolved Hide resolved
petab/petab_schema.yaml Outdated Show resolved Hide resolved
@dweindl
Copy link
Member Author

dweindl commented Dec 16, 2019

Thanks for comments. All done.

dweindl added a commit to LeonardSchmiester/Benchmark-Models that referenced this pull request Dec 16, 2019
Copy link
Member

@yannikschaelte yannikschaelte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

minor stuff

doc/documentation_data_format.md Outdated Show resolved Hide resolved
doc/documentation_data_format.md Outdated Show resolved Hide resolved
doc/documentation_data_format.md Outdated Show resolved Hide resolved
doc/documentation_data_format.md Outdated Show resolved Hide resolved
doc/documentation_data_format.md Outdated Show resolved Hide resolved
petab/petablint.py Outdated Show resolved Hide resolved
petab/petablint.py Outdated Show resolved Hide resolved
petab/problem.py Outdated Show resolved Hide resolved
petab/sampling.py Outdated Show resolved Hide resolved
petab/yaml.py Show resolved Hide resolved
dweindl and others added 3 commits December 16, 2019 18:46
Co-Authored-By: Yannik Schälte <31767307+yannikschaelte@users.noreply.github.com>
@dweindl dweindl changed the title [WIP] YAML file for grouping PEtab files YAML file for grouping PEtab files Dec 16, 2019
@dweindl dweindl merged commit 54c526a into develop Dec 16, 2019
@dweindl dweindl deleted the feature_49_yaml branch December 16, 2019 18:12
dweindl added a commit that referenced this pull request Dec 17, 2019
Release 0.0.1

Data format:
* Update format and documentation with respect to data and parameter scales
  (#169)
* Define YAML schema for grouping PEtab files, also allowing for more complex
  combinations of files (#183)

Library:
* Refactor library. Reorganize `petab.core` functions.
* Fix visualization w/o condition names #142
* Extend validator
* Removed deprecated functions petab.Problem.get_constant_parameters
  and petab.sbml.constant_species_to_parameters
* Minor fixes and extensions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants