Metadata-Version: 2.1
Name: grading_tools
Version: 0.21.3
Summary: Tools for evaluating student submissions.
Author: Nicholas Cifuentes-Goodbody
Requires-Python: >=3.11,<3.13
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: bson (>=0.5.10,<0.6.0)
Requires-Dist: category-encoders (>=2.6.2,<3.0.0)
Requires-Dist: flask (>=2.3.3,<3.0.0)
Requires-Dist: flask-cors (>=4.0.0,<5.0.0)
Requires-Dist: markdown (>=3.4.4,<4.0.0)
Requires-Dist: matplotlib (>=3.8.0,<4.0.0)
Requires-Dist: numpy (>=1.26.0,<2.0.0)
Requires-Dist: pandas (>=1.5.3,<2.0.0)
Requires-Dist: pillow (>=10.0.1,<11.0.0)
Requires-Dist: rapidfuzz (>=3.3.0,<4.0.0)
Requires-Dist: scikit-learn (>=1.3.1,<2.0.0)
Requires-Dist: scipy (>=1.11.2,<2.0.0)
Requires-Dist: statsmodels (>=0.14.0,<0.15.0)
Requires-Dist: toml (>=0.10.2,<0.11.0)
Requires-Dist: wqet-grader (>=0.2.1,<0.3.0)
Description-Content-Type: text/markdown

# Grading Tools

[![build](https://github.com/worldquant-university/grading-tools/actions/workflows/build.yml/badge.svg)](https://github.com/worldquant-university/grading-tools/actions)
[![codecov](https://codecov.io/gh/worldquant-university/grading-tools/branch/main/graph/badge.svg?token=PV83R6T99N)](https://codecov.io/gh/worldquant-university/grading-tools)

This library allows you to compare student submissions to an answer, and provide
meaningful feedback. It currently accommodates basic Python data structures, `pandas`
Series and DataFrames, `scikit-learn` models, and images.

## Installation

```bash
$ pip install grading-tools
```

## Usage

```python
>>> from grading_tools.graders import PythonGrader
>>> sub = {"snake": "reptile", "frog": "reptile"}
>>> ans = {"snake": "reptile", "frog": "amphibian"}
>>> g = PythonGrader(sub, ans)
>>> g.grade_dict()
>>> g.return_feedback(html=False)
{
    'score': 0,
    'passed': False,
    'comment': "The value for the key `frog` doesn't match the expected result."
}
```

## License

`grading-tools` was created by
[Nicholas Cifuentes-Goodbody](https://github.com/ncgoodbody) at
[WorldQuant University](http://wqu.edu/). It is not currently licensed for reuse of
any kind.

## Contributing

This package uses [Python Semantic Release](https://python-semantic-release.readthedocs.io/en/latest/), so all commit messages must follow the [Angular](https://github.com/angular/angular/blob/main/CONTRIBUTING.md#-commit-message-format) format.

