We welcome and in fact would love some help.
The preferred workflow to contribute is:
- Fork this repository into your own github account.
- Clone the fork on your account onto your local disk:
git clone [email protected]:YourLogin/scikit-learn-extra.git
cd scikit-learn-extra
- Create a branch for your new feature, do not work in the master branch:
git checkout -b new-feature
- Write some code, or docs, or tests.
- When you are done, submit a pull request.
This is still a very young project, but we do have a few guiding principles:
Maintain semantics of the scikit-learn API
Write detailed docstrings in numpy format
Support pandas dataframes and numpy arrays as inputs
Write tests
Format with black. You can use pre-commit to auto-format code on each commit,
pip install pre-commit pre-commit install
To run the tests, use:
pytest
There are usually some issues in the project github page looking for contributors, if not you're welcome to propose some ideas there, or a great first step is often to just use the library, and add to the examples directory. This helps us with documentation, and often helps to find things that would make the library better to use.