{"id":28962012,"url":"https://github.com/nico-curti/evalstats","last_synced_at":"2025-08-21T00:13:45.771Z","repository":{"id":297472647,"uuid":"990656660","full_name":"Nico-Curti/evalstats","owner":"Nico-Curti","description":"Extraction of the main statistics from a series of data","archived":false,"fork":false,"pushed_at":"2025-06-05T16:27:04.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-24T02:40:16.404Z","etag":null,"topics":["exercise","software-development","statistics"],"latest_commit_sha":null,"homepage":"https://evalstats.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nico-Curti.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-26T12:42:27.000Z","updated_at":"2025-06-05T16:27:06.000Z","dependencies_parsed_at":"2025-06-05T17:27:18.857Z","dependency_job_id":"31c34382-20c0-4020-8bf9-4d756ea19434","html_url":"https://github.com/Nico-Curti/evalstats","commit_stats":null,"previous_names":["nico-curti/evalstats"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nico-Curti/evalstats","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nico-Curti%2Fevalstats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nico-Curti%2Fevalstats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nico-Curti%2Fevalstats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nico-Curti%2Fevalstats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nico-Curti","download_url":"https://codeload.github.com/Nico-Curti/evalstats/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nico-Curti%2Fevalstats/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271406060,"owners_count":24753904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-20T02:00:09.606Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["exercise","software-development","statistics"],"created_at":"2025-06-24T02:33:10.625Z","updated_at":"2025-08-21T00:13:45.750Z","avatar_url":"https://github.com/Nico-Curti.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"| **Authors**  | **Project** |  **Documentation** | **Build Status** | **Code Quality** | **Coverage** |\n|:------------:|:-----------:|:------------------:|:----------------:|:----------------:|:------------:|\n| [**N. Curti**](https://github.com/Nico-Curti) \u003cbr/\u003e S\u0026C25 student | **evalstats** | [![ReadTheDocs](https://readthedocs.org/projects/evalstats/badge/?version=latest)](https://evalstats.readthedocs.io/en/latest/?badge=latest) | [![Python](https://github.com/Nico-Curti/evalstats/actions/workflows/python.yml/badge.svg)](https://github.com/Nico-Curti/evalstats/actions/workflows/python.yml) | [![Codacy Badge](https://app.codacy.com/project/badge/Grade/8ec26cf96be14a3da6da1c7ac28a5aa9)](https://app.codacy.com/gh/Nico-Curti/evalstats/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade) \u003cbr/\u003e [![codebeat badge](https://codebeat.co/badges/ac50490d-32d4-4d18-ac6a-4a5a4951296c)](https://codebeat.co/projects/github-com-nico-curti-evalstats-main) | **TODO** |\n\n[![GitHub pull-requests](https://img.shields.io/github/issues-pr/Nico-Curti/evalstats.svg?style=plastic)](https://github.com/Nico-Curti/evalstats/pulls)\n[![GitHub issues](https://img.shields.io/github/issues/Nico-Curti/evalstats.svg?style=plastic)](https://github.com/Nico-Curti/evalstats/issues)\n\n[![GitHub stars](https://img.shields.io/github/stars/Nico-Curti/evalstats.svg?label=Stars\u0026style=social)](https://github.com/Nico-Curti/evalstats/stargazers)\n[![GitHub watchers](https://img.shields.io/github/watchers/Nico-Curti/evalstats.svg?label=Watch\u0026style=social)](https://github.com/Nico-Curti/evalstats/watchers)\n\n\u003ca href=\"https://github.com/UniboDIFABiophysics\"\u003e\n  \u003cdiv class=\"image\"\u003e\n    \u003cimg src=\"https://cdn.rawgit.com/physycom/templates/697b327d/logo_unibo.png\" width=\"90\" height=\"90\"\u003e\n  \u003c/div\u003e\n\u003c/a\u003e\n\n# evalstats v0.0.1\n\n## Example of project for Software\u0026Computing course (aa 2024-25)\n\nThis is an example project developed during the Software\u0026Computing course of the Applied Physics curriculum in collaboration with the students.\n\n**Not intended for exam use.**\n\n* [Overview](#overview)\n* [Prerequisites](#prerequisites)\n* [Installation](#installation)\n* [Usage](#usage)\n* [Testing](#testing)\n* [Table of contents](#table-of-contents)\n* [Contribution](#contribution)\n* [References](#references)\n* [Authors](#authors)\n* [License](#license)\n* [Acknowledgments](#acknowledgments)\n* [Citation](#citation)\n\n## Overview\n\nWrite an overview about the context and/or project that you have developed.\nIn the documentation you can use also fancy layouts, tables, and references to the code (like [this](https://github.com/Nico-Curti/evalstats/blob/main/README.md))\n\n| :triangular_flag_on_post: Note |\n|:-------------------------------|\n| This is an important note for your documentation! |\n\n## Prerequisites\n\nThe complete list of requirements for the `evalstats` package is reported in the [requirements.txt](https://github.com/Nico-Curti/evalstats/blob/main/requirements.txt)\n\n## Installation\n\nPython version supported : ![Python version](https://img.shields.io/badge/python-3.5|3.6|3.7|3.8|3.9|3.10|3.11|3.12|3.13-blue.svg)\n\nThe `Python` installation for *developers* is executed using [`setup.py`](https://github.com/Nico-Curti/evalstats/blob/main/setup.py) script.\n\n```mermaid\ngraph LR;\n    A(Install\u003cbr\u003eRequirements) --\u003e|python -m pip install -r requirements.txt| B(Install\u003cbr\u003eevalstats)\n    B --\u003e|python -m pip install .| C(Package\u003cbr\u003eInstall)\n    B --\u003e|python -m pip install --editable . --user| D(Development\u003cbr\u003eMode)\n```\n\n## Usage\n\nYou can use the `evalstats` library into your Python scripts or directly via command line.\n\n### Command Line Interface\n\nThe `evalstats` package could be easily used via command line (after installing the library!) by simply calling the `evalstats` program.\n\nThe full list of available flags for the customization of the command line could be obtained by calling:\n\n```bash\n$ evalstats --help\n\nusage: evalstats [-h] [--data DATA [DATA ...]] [--input INPUT] [--num-workers NUM_WORKERS] [--mean] [--std] [--min] [--max] [--count] [--sum] [--variance] [--all]\n                 [--output OUTPUT] [--version]\n\nEvaluate the main statistics of a given set of data.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --data DATA [DATA ...], -d DATA [DATA ...]\n                        The input data for which statistics will be computed. It should be a list of numbers separated by spaces. If not provided, an input file must be\n                        specified using --input. Example: --data 1.0 2.5 3.6 4.2\n  --input INPUT, -i INPUT\n                        The input file from which to read the data. If not provided, data must be passed as a positional argument.\n  --num-workers NUM_WORKERS, -n NUM_WORKERS\n                        The number of worker threads to use for parallel computation. Default is 4.\n  --mean, -mu           Compute the mean of the data.\n  --std, -S             Compute the standard deviation of the data.\n  --min, -m             Compute the minimum value of the data.\n  --max, -M             Compute the maximum value of the data.\n  --count, -c           Count the number of elements in the data.\n  --sum, -s             Compute the sum of the data.\n  --variance, -V        Compute the variance of the data.\n  --all, -A             Compute all statistics (mean, std, min, max, count, sum, variance).\n  --output OUTPUT, -o OUTPUT\n                        The output file to save the computed statistics. If not provided, results will be printed to stdout.\n  --version, -v         Get the current version installed\n```\n\n### Python script\n\nA complete list of beginner-examples for the build of a custom `evalstats` pipeline could be found [here](https://github.com/Nico-Curti/evalstats/blob/main/examples) (**this link is broken but you can try to add your own examples!**).\n\nFor more advanced users, we suggest to take a look at the example [notebooks](https://github.com/Nico-Curti/evalstats/blob/main/notebooks), in which are reported more sophisticated applications and tests about the developed codes.\n\nFor sake of completeness, a simple `evalstats` pipeline could be obtained by the following snippet:\n\n```python\nfrom evalstats import EvalStats\n\n# create a dummy buffer\ndata = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n# create the object\nes = EvalStats(data=data, num_workers=4)\nprint(es.all)\n```\n\n## Testing\n\nA full set of testing functions is provided in the [test](https://github.com/Nico-Curti/evalstats/blob/main/test) directory (**this is another task on which you can work yourself**).\nThe tests aim to cover the full set of APIs proposed in the `evalstats` package.\nIf you want to contribute in the development of the library, please ensure that your new features will not affect the test results.\nIf you want to add new graphomic features, please add a new test branch which cover as much as possible your codes.\n\nThe tests are performed using the [`pytest`](https://github.com/pytest-dev/pytest/) Python package.\nYou can run the full list of tests with:\n\n```bash\npython -m pytest ./test/ --cov=evalstats --cov-config=.coveragerc\n```\n\nin the project root directory.\n\nThe continuous integration using `github-actions` tests each function in every commit, thus pay attention to the status badges before use this package or use the latest stable version available.\n\n## Table of contents\n\nDescription of the folders related to the `Python` version.\n\n| **Directory**                                                                        |  **Description**                                                             |\n|:-------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------|\n| [notebook](https://github.com/Nico-Curti/evalstats/blob/main/notebooks) | `Jupyter` notebook with some examples of code optimization.             |\n| [evalstats](https://github.com/Nico-Curti/evalstats/blob/main/evalstats)          | List of `Python` scripts for `evalstats` analysis. |\n\n## Contribution\n\n| :triangular_flag_on_post: Note |\n|:-------------------------------|\n| The following files are missing an they must be inserted/updated according to your needs/projects |\n\nAny contribution is more than welcome :heart:. Just fill an [issue](https://github.com/Nico-Curti/evalstats/blob/main/.github/ISSUE_TEMPLATE/ISSUE_TEMPLATE.md) or a [pull request](https://github.com/Nico-Curti/evalstats/blob/main/.github/PULL_REQUEST_TEMPLATE/PULL_REQUEST_TEMPLATE.md) and we will check ASAP!\n\nSee [here](https://github.com/Nico-Curti/evalstats/blob/main/.github/CONTRIBUTING.md) for further informations about how to contribute with this project.\n\n## References\n\n\u003cblockquote\u003e1- Author et al, \"Title\", Journal, Year \u003c/blockquote\u003e\n\n## Authors\n\n* \u003cimg src=\"https://avatars0.githubusercontent.com/u/24650975?s=400\u0026v=4\" width=\"25px\"\u003e [\u003cimg src=\"https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png\" width=\"27px\"\u003e](https://github.com/Nico-Curti) [\u003cimg src=\"https://cdn.rawgit.com/physycom/templates/697b327d/logo_unibo.png\" width=\"25px\"\u003e](https://www.unibo.it/sitoweb/nico.curti2) **Nico Curti**\n\n* **All the students of the Software\u0026Computing course (aa. 2024-25)**\n\nSee also the list of [contributors](https://github.com/Nico-Curti/evalstats/contributors) [![GitHub contributors](https://img.shields.io/github/contributors/Nico-Curti/evalstats.svg?style=plastic)](https://github.com/Nico-Curti/evalstats/graphs/contributors/) who participated in this project.\n\n## License\n\nThe `evalstats` package is licensed under the MIT [License](https://github.com/Nico-Curti/evalstats/blob/main/LICENSE).\n\n## Acknowledgments\n\nThanks goes to all contributors of this project.\n\n## Citation\n\nIf you have found `evalstats` helpful in your research, please consider citing the original repository\n\n```BibTeX\n@misc{evalstats,\n  author = {Curti, Nico and Software\u0026Computing students},\n  title = {evalstats - Extraction of the main statistics from a series of data},\n  year = {2025},\n  publisher = {GitHub},\n  howpublished = {\\url{https://github.com/Nico-Curti/evalstats}}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnico-curti%2Fevalstats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnico-curti%2Fevalstats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnico-curti%2Fevalstats/lists"}