Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kmedian/yearfrac
Difference between dates as a fraction of 1 year
https://github.com/kmedian/yearfrac
date-calculation day-count day-count-method icma isda pypi year-difference
Last synced: 2 days ago
JSON representation
Difference between dates as a fraction of 1 year
- Host: GitHub
- URL: https://github.com/kmedian/yearfrac
- Owner: kmedian
- License: mit
- Created: 2018-09-01T08:07:30.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2023-05-09T08:55:04.000Z (over 1 year ago)
- Last Synced: 2024-10-29T06:06:27.807Z (19 days ago)
- Topics: date-calculation, day-count, day-count-method, icma, isda, pypi, year-difference
- Language: Python
- Homepage:
- Size: 54.7 KB
- Stars: 5
- Watchers: 3
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
[![PyPI version](https://badge.fury.io/py/yearfrac.svg)](https://badge.fury.io/py/yearfrac)
[![yearfrac](https://snyk.io/advisor/python/yearfrac/badge.svg)](https://snyk.io/advisor/python/yearfrac)# yearfrac
## Installation
The `yearfrac` [git repo](http://github.com/kmedian/yearfrac) is available as [PyPi package](https://pypi.org/project/yearfrac)```
pip install yearfrac
```## Usage
Check the [examples](https://github.com/kmedian/yearfrac/tree/master/examples) folder for notebooks.Functions
* `isaleapyear` -- Check if a year is leap year
* `eastersunday` -- Determine day and month of an Easter Sunday for a given year
* `jd_to_date` and `date_to_jd` -- Julian Day number conversion
* `act_afb` -- Actual/Actual AFB
* `act_isda` -- Actual/Actual ISDA
* `d30360e` -- 30E/360 ISDA daycount method
* `d30365` -- 30/365 daycount method
* `yearfrac` -- Wrapper for all daycount methods## Appendix
### Install a virtual environment
```
python3.7 -m venv .venv
source .venv/bin/activate
pip3 install --upgrade pip
pip3 install -r requirements.txt
pip3 install -r requirements-dev.txt
pip3 install -r requirements-demo.txt
```(If your git repo is stored in a folder with whitespaces, then don't use the subfolder `.venv`. Use an absolute path without whitespaces.)
### Python Commands
* Check syntax: `flake8 --ignore=F401 --exclude=$(grep -v '^#' .gitignore | xargs | sed -e 's/ /,/g')`
* Run Unit Tests: `python -W ignore -m unittest discover`
* Remove `.pyc` files: `find . -type f -name "*.pyc" | xargs rm`
* Remove `__pycache__` folders: `find . -type d -name "__pycache__" | xargs rm -rf`Publish
```sh
# pandoc README.md --from markdown --to rst -s -o README.rst # RST file is too much trouble
python setup.py sdist
twine upload -r pypi dist/*
```### Support
Please [open an issue](https://github.com/kmedian/yearfrac/issues/new) for support.### Contributors
* Adam Groszer [@agroszer](https://github.com/agroszer)
* Emilio Basualdo [@emiliobasualdo](https://github.com/emiliobasualdo)
* Ivan Nesic [@fatkaratekid](https://github.com/fatkaratekid)
* Vinay Gupta [@vinschess](https://github.com/vinschess)
* Ulf Hamster [@ulf1](https://github.com/ulf1)Please contribute using [Github Flow](https://guides.github.com/introduction/flow/). Create a branch, add commits, and [open a pull request](https://github.com/kmedian/yearfrac/compare/).