cosinorpy

Cosinor based rhythmometry in Python.

https://github.com/mmoskon/cosinorpy

Science Score: 49.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    1 of 1 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.4%) to scientific vocabulary
Last synced: 7 months ago · JSON representation

Repository

Cosinor based rhythmometry in Python.

Basic Info
  • Host: GitHub
  • Owner: mmoskon
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage:
  • Size: 21.5 MB
Statistics
  • Stars: 24
  • Watchers: 3
  • Forks: 5
  • Open Issues: 0
  • Releases: 13
Created about 6 years ago · Last pushed 10 months ago
Metadata Files
Readme License

README.md

CosinorPy



CosinorPy presents a python package for cosinor based rhythmometry. It is composed of four modules: * file_parser: reading and writting xlsx or csv files and generating synthetic data

  • cosinor: single- or multi-component cosinor functions

  • cosinor1: single-component cosinor specific functions

  • cosinor_nonlin: generalized cosinor model and its analysis using nonlinear regression (added in release v2)

To use these modules include the following code in your python file:

from CosinorPy import file_parser, cosinor, cosinor1, cosinor_nonlin

CosinorPy can be used in a combination with different types of experimental data (e.g., qPCR data - independent measurement, bioluminescence data - dependent measurements, or even count data for which Poisson regression is used). Input data need to be formatted in accordance with the implementation of the file_parser module (see file_parser). This module implements several pre-processing functions that can be applied to the data, such as removal of outliers, removal of the linear component in the data, removal of the data outside a given time interval, etc. Moreover, the user might as well preprocess the data with alternative methods, e.g., with the application of a lowpass filter. When collecting the data, the user should follow the guidelines for circadian analyses as described in [1]. Moreover, before collecting the samples, the user can approximate the minimal required sample size to obtain the required accuracy 2. After the data has been imported, different types of analyses can be applied. These are described in more details in the examples below and in the papers [3,4].

Installation

CosinorPy can be installed using pip with the command:

pip install CosinorPy

To install the software version described in [3], the following command should be issued:

pip install CosinorPy==1.1

To install the software version described in [4], the following command should be issued:

pip install CosinorPy==2.1

Examples

Examples are given as interactive python notebook (ipynb) files: * demo_independent.ipynb: cosinor analysis of independent data * demo_dependent.ipynb: cosinor analysis of population (dependent) data * demo_independent_extended.ipynb: cosinor analysis of independent data with extended functionalities of multi-component cosinor * demo_dependent_extended.ipynb: cosinor analysis of population (dependent) data with extended functionalities of multi-component cosinor * demo_independent_nonlin.ipynb: cosinor analysis of independent data with extended a generalised cosinor model * demo_dependent_nonlin.ipynb: cosinor analysis of population (dependent) data with extended a generalised cosinor model * demo_csv.ipynb: reading from a csv file * demo_xlsx.ipynb: reading from an xlsx file * multi_vs_single.ipynb: multi-component versus single-component cosinor model

The repository as well includes the following R scripts: cosinor2_independent.R, cosinor2_independent_compare.R, cosinor2_dependent.R and cosinor2_dependent_compare.R. These can be used to reproduce some of the results obtained with CosinorPy using cosinor and cosinor2 R packages.

Questions

How to cite CosinorPy

If you are using CosinorPy for your scientific work, please cite:

Moškon, M. "CosinorPy: A Python Package for cosinor-based Rhythmometry." BMC Bioinformatics 21.485 (2020).

The paper is available at https://www.doi.org/10.1186/s12859-020-03830-w.

Contact

Please direct your questions and comments to miha.moskon@fri.uni-lj.si

References

[1] Hughes, Michael E., et al. "Guidelines for genome-scale analysis of biological rhythms." Journal of biological rhythms 32.5 (2017): 380-393.

[2] Bingham, Christopher, et al. "Inferential statistical methods for estimating and comparing cosinor parameters." Chronobiologia 9.4 (1982): 397-439.

[3] Moškon, M. "CosinorPy: A Python Package for cosinor-based Rhythmometry." BMC Bioinformatics 21.485 (2020).

[4] Moškon, M. "Identification and characterisation of variable oscillatory behaviour using CosinorPy." https://doi.org/10.1101/2022.07.04.498691

Owner

  • Name: Miha Moskon
  • Login: mmoskon
  • Kind: user
  • Location: Slovenia
  • Company: University of Ljubljana

GitHub Events

Total
  • Watch event: 3
  • Issue comment event: 2
  • Push event: 2
  • Fork event: 1
Last Year
  • Watch event: 3
  • Issue comment event: 2
  • Push event: 2
  • Fork event: 1

Committers

Last synced: almost 2 years ago

All Time
  • Total Commits: 234
  • Total Committers: 1
  • Avg Commits per committer: 234.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 11
  • Committers: 1
  • Avg Commits per committer: 11.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Miha Moskon m****n@f****i 234
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 10
  • Total pull requests: 1
  • Average time to close issues: 8 days
  • Average time to close pull requests: about 14 hours
  • Total issue authors: 5
  • Total pull request authors: 1
  • Average comments per issue: 2.6
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: about 14 hours
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • himalayajung (6)
  • jonasvdd (1)
  • krassowski (1)
  • Fan-loewe (1)
  • shs008 (1)
Pull Request Authors
  • BerciTheBeast (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 250 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 13
  • Total maintainers: 1
pypi.org: cosinorpy

Python package for cosinor based rhytmometry

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 250 Last month
Rankings
Dependent packages count: 10.1%
Downloads: 12.6%
Stargazers count: 13.7%
Average: 15.0%
Forks count: 16.9%
Dependent repos count: 21.5%
Maintainers (1)
Last synced: 8 months ago

Dependencies

setup.py pypi
  • matplotlib *
  • numpy *
  • openpyxl *
  • pandas *
  • scikit-optimize *
  • scipy *
  • statsmodels *