Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions docs/about/about.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Data scientists spend a huge amount of time on data pre-processing and transform
It would be great (we thought back in the day) to gather the most frequently used data
pre-processing techniques and transformations in a library, from which we could pick
and choose the transformation that we need, and use it just like we would use any other
sklearn class. This was the original vision for Feature-engine.
sklearn class. This was the original vision for feature-engine.

Feature-engine is an open source Python package originally designed to support the online
course `Feature Engineering for Machine Learning <https://courses.trainindata.com/p/feature-engineering-for-machine-learning>`_,
Expand All @@ -21,13 +21,13 @@ growing international community is beginning to lead the development.
Governance
----------

The decision making process and governance structure of Feature-engine is laid out in
The decision making process and governance structure of feature-engine is laid out in
the :ref:`**governance document** <governance>`.

Core contributors
-----------------

The following people are currently core contributors to Feature-engine’s development
The following people are currently core contributors to feature-engine’s development
and maintenance:

.. include:: authors.rst
Expand All @@ -36,7 +36,7 @@ and maintenance:
Former core contributors
------------------------

The following people are former core contributors to Feature-engine’s development
The following people are former core contributors to feature-engine’s development
and maintenance:

.. include:: former_authors.rst
Expand All @@ -49,11 +49,11 @@ Contributors

|

A growing international community is beginning to lead Feature-engine's development.
You can learn more about Feature-engine's Contributors in the
A growing international community is beginning to lead feature-engine's development.
You can learn more about feature-engine's Contributors in the
`GitHub contributors page <https://github.com/feature-engine/feature_engine/graphs/contributors>`_.

Citing Feature-engine
Citing feature-engine
---------------------

.. image:: https://zenodo.org/badge/163630824.svg
Expand All @@ -64,8 +64,8 @@ Citing Feature-engine

|

If you use Feature-engine in a scientific publication, you can cite the following paper:
Galli, S., (2021). `Feature-engine: A Python package for feature engineering for machine learning. <https://joss.theoj.org/papers/10.21105/joss.03642>`_
If you use feature-engine in a scientific publication, you can cite the following paper:
Galli, S., (2021). `feature-engine: A Python package for feature engineering for machine learning. <https://joss.theoj.org/papers/10.21105/joss.03642>`_
Journal of Open Source Software, 6(65), 3642.

Bibtex entry:
Expand All @@ -81,13 +81,13 @@ Bibtex entry:
number = {65},
pages = {3642},
author = {Soledad Galli},
title = {Feature-engine: A Python package for feature engineering for machine learning},
title = {feature-engine: A Python package for feature engineering for machine learning},
journal = {Journal of Open Source Software}
}



You can also find a DOI (digital object identifier) for every version of Feature-engine
You can also find a DOI (digital object identifier) for every version of feature-engine
on `zenodo.org <https://zenodo.org/badge/latestdoi/163630824>`_; use the BibTeX on this
site to reference specific versions of the software.

Expand Down
6 changes: 3 additions & 3 deletions docs/about/governance.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Governance
==========

The purpose of this document is to formalize the governance process used by the
Feature-engine project and clarify how decisions are made and how the community works
feature-engine project and clarify how decisions are made and how the community works
together. This is the first version of our governance policy and will be updated as our
community grows and more of us take on different roles.

Expand All @@ -26,7 +26,7 @@ Core Contributors are community members who are dedicated to the continued devel
of the project through ongoing engagement with the community. Core Contributors are
expected to review code contributions, can approve and merge pull requests, can decide
on the fate of pull requests, and can be involved in deciding major changes to the
Feature-engine API. Core Contributors determine who can join as a Core Contributor.
feature-engine API. Core Contributors determine who can join as a Core Contributor.


Founder and Leadership
Expand All @@ -38,7 +38,7 @@ dissemination of the project. In the tradition of Python, Sole is referred to as
“benevolent dictator for life” (BDFL) of the project, or simply, “the founder”. From a
governance perspective, the BDFL has a special role in that they provide vision,
thought leadership, and high-level direction for the project’s members and contributors.
The BDFL has the authority to make all final decisions for the Feature-engine Project.
The BDFL has the authority to make all final decisions for the feature-engine Project.
However, in practice, the BDFL, chooses to defer that authority to the consensus of the
community discussion channels and the Core Contributors. The BDFL can also propose and
vote for new Core Contributors.
Expand Down
4 changes: 2 additions & 2 deletions docs/about/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
About
=====

In this section you will find information about the Feature-engine's origin, main
In this section you will find information about the feature-engine's origin, main
developers, roadmap and overall vision for the package. You will also find information
about how to cite Feature-engine and our main sponsors.
about how to cite feature-engine and our main sponsors.

.. toctree::
:maxdepth: 1
Expand Down
16 changes: 8 additions & 8 deletions docs/about/roadmap.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Roadmap
=======

This document provides general directions on what the core contributors would like to
see developed in Feature-engine. As resources are limited, we can't promise when or if
see developed in feature-engine. As resources are limited, we can't promise when or if
the transformers listed here will be included in the library. We welcome all the help
we can get to support this vision. If you are interested in contributing, please get in
touch.
Expand All @@ -18,7 +18,7 @@ Feature-engine makes data engineering easy by allowing the selection of feature
directly within its transformers. It also interlaces well with exploratory data analysis
(EDA) by returning dataframes for easy data exploration.

Feature-engine’s transformers preserve Scikit-learn functionality with the methods fit()
Feature-engine’s transformers preserve scikit-learn functionality with the methods fit()
and transform() and can be integrated into a Pipeline to simplify putting the model in
production.

Expand All @@ -32,14 +32,14 @@ unwanted stages of the development.
Vision
------

At the moment, Feature-engine's functionality is tailored to tabular data, with numerical,
At the moment, feature-engine's functionality is tailored to tabular data, with numerical,
categorical, or datetime variables. We started supporting the creation of features for
time series forecasting in 2022.

But we would like to extend Feature-engine's functionality to work with text and time
But we would like to extend feature-engine's functionality to work with text and time
series, as well as, expand its current functionality for tabular data.

In the following figure we show the overall structure and vision for Feature-engine:
In the following figure we show the overall structure and vision for feature-engine:

.. figure:: ../images/FeatureEnginePackageStructure.png
:align: center
Expand All @@ -59,9 +59,9 @@ in the package:

Transformers for tabular data

The current transformations supported by Feature-engine return features that are easy
The current transformations supported by feature-engine return features that are easy
to interpret, and the effects of the transformations are clear and easy to understand.
The original aim of Feature-engine was to provide technology that is suitable to create
The original aim of feature-engine was to provide technology that is suitable to create
models that will be used in real settings, and return understandable variables.

Having said this, more and more, users are requesting features to combine or transform
Expand Down Expand Up @@ -99,7 +99,7 @@ Goals
Our main goals are:

- Continue maintaining a high-quality, well-documented collection of canonical tools for data processing.
- Expand the documentation with more examples about Feature-engine's functionality.
- Expand the documentation with more examples about feature-engine's functionality.
- Expand the documentation with more detail on how to contribute to the package.
- Expand the library's functionality as per the precedent paragraphs.

Expand Down
4 changes: 2 additions & 2 deletions docs/contribute/code_of_conduct.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ Code of Conduct

Feature-engine is an open source Python project. We follow the
`Python Software Foundation Code of Conduct <http://www.python.org/psf/codeofconduct/>`_.
All interactions among members of the Feature-engine community must meet those
All interactions among members of the feature-engine community must meet those
guidelines. This includes (but is not limited to) interactions through the mailing
list, GitHub and StackOverflow.

Everyone is expected to be open, considerate, and respectful of others no matter what
their position is within the project. We show gratitude for any contribution, big or
small. We welcome feedback and participation. We want to make Feature-engine a nice,
small. We welcome feedback and participation. We want to make feature-engine a nice,
welcoming and safe place for you to do your first contribution to open source, and why
not the second, the third and so on :).
42 changes: 21 additions & 21 deletions docs/contribute/contribute_code.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
Contribute Code
===============

Contributing code to Feature-engine is fun and easy. If you want to make a code contribution,
Contributing code to feature-engine is fun and easy. If you want to make a code contribution,
you can check the `issue tracker <https://github.com/feature-engine/feature_engine/issues/>`_
for already requested and wanted functionality. Alternatively, you can create a new issue
with functionality you would like to see included in Feature-engine and then work it through.
with functionality you would like to see included in feature-engine and then work it through.


Contributing workflow
Expand All @@ -28,7 +28,7 @@ A typical contributing workflow goes like this:
10. **Test** the code.
11. **Review** the code with us.
12. Make the **changes** and commit them to your fork, using the same branch created in 5.
13. When it is ready, we will **merge** your contribution into Feature-engine's source code base.
13. When it is ready, we will **merge** your contribution into feature-engine's source code base.

To avoid extra work or duplication, it is important that we communicate right from the
beginning, so we can build together a clear understanding of how you would like to get involved
Expand All @@ -39,10 +39,10 @@ In the rest of the document, we will describe steps 3 to 13 in more detail.
Fork the Repository
-------------------

When you fork the repository, you create a copy of Feature-engine's source code into
your Github account, which you can edit. To fork Feature-engine's repository, click the
When you fork the repository, you create a copy of feature-engine's source code into
your Github account, which you can edit. To fork feature-engine's repository, click the
**fork** button in the upper right corner of
`Feature-engine's Repository <https://github.com/feature-engine/feature_engine>`_.
`feature-engine's Repository <https://github.com/feature-engine/feature_engine>`_.

.. figure:: ../images/fork.png
:figclass: align-center
Expand All @@ -57,7 +57,7 @@ Once you forked the repository, clone the fork to your local machine.

$ git clone https://github.com/<YOURUSERNAME>/feature_engine

2. Set up an ``upstream`` remote from where you can pull the latest code changes occurring in the main Feature-engine repository::
2. Set up an ``upstream`` remote from where you can pull the latest code changes occurring in the main feature-engine repository::

$ git remote add upstream https://github.com/feature-engine/feature_engine.git

Expand All @@ -72,7 +72,7 @@ You should see both your fork (origin) and the main repository (upstream) linked
upstream https://github.com/feature-engine/feature_engine.git (fetch)
upstream https://github.com/feature-engine/feature_engine.git (push)

Keep in mind that Feature-engine is being actively developed, so you may need to update
Keep in mind that feature-engine is being actively developed, so you may need to update
your fork regularly. See below how to **Keep your fork up to date**.

Set up the Development Environment
Expand All @@ -81,13 +81,13 @@ Set up the Development Environment
After creating a local copy of the repo, you need to set up the development environment.
Setting up a development environment will ensure that you have all the libraries
you need for the development, no more and no less. These libraries include
`Feature-engine dependencies <https://github.com/feature-engine/feature_engine/blob/main/pyproject.toml>`_,
like Pandas, NumPy and Scikit-learn and also
`feature-engine dependencies <https://github.com/feature-engine/feature_engine/blob/main/pyproject.toml>`_,
like pandas, NumPy and scikit-learn and also
`software development libraries <https://github.com/feature-engine/feature_engine/blob/main/pyproject.toml>`_
like pytest, mypy, flake8, isort and black.

It is optional but highly advisable that you create a virtual environment. A virtual environment
is a "separate space", where you can install Feature-engine's dependencies. To create a virtual
is a "separate space", where you can install feature-engine's dependencies. To create a virtual
environment, use any virtual environment tool of your choice. Some examples include:

1. `venv <https://docs.python.org/3/library/venv.html>`_
Expand Down Expand Up @@ -137,7 +137,7 @@ Install dependencies
~~~~~~~~~~~~~~~~~~~~

Now, you are ready to install all dependencies, that is, all the Python libraries used by
Feature-engine. First, navigate to your clone of Feature-engine::
feature-engine. First, navigate to your clone of feature-engine::

$ cd feature_engine

Expand All @@ -146,7 +146,7 @@ Now, install Feature_engine in developer mode::
$ pip install -e ".[docs,tests]"

Don't forget the `.[docs,tests]` after the `-e`.
This will add Feature-engine to your PYTHONPATH so your code edits
This will add feature-engine to your PYTHONPATH so your code edits
are automatically picked up, and there is no need to re-install the package after each
code change. This will also install Feature'engine's core dependencies,
as well as the dependencies needed for documentation and testing.
Expand Down Expand Up @@ -316,7 +316,7 @@ our tests. To evaluate the code coverage, you need to run pytest with coverage::

$ coverage run -m pytest

And then, you can visualize the report like this::
And then, you can visualise the report like this::

$ coverage report

Expand Down Expand Up @@ -410,7 +410,7 @@ important thing is that you do not get any red warning during the build process.
Using tox
~~~~~~~~~

In Feature-engine, we use tox to run all our tests automatically. If you want to run all
In feature-engine, we use tox to run all our tests automatically. If you want to run all
the tests using tox locally:

1. Install tox in your development environment::
Expand All @@ -426,7 +426,7 @@ the tests using tox locally:
$ tox

Just writing `tox`, will trigger automatically the functionality tests, code styling tests,
typehint tests and documentation test. These will test the entire Feature-engine ecosystem
typehint tests and documentation test. These will test the entire feature-engine ecosystem
and not just your new scripts, so it will be more time consuming.

If the tests pass, the code is in optimal condition :)
Expand Down Expand Up @@ -462,13 +462,13 @@ will try to help.
through the PR as well.**

Once the submission is reviewed and provided the continuous integration tests have
passed and the code is up to date with Feature-engine's main branch, we will be ready
to "Squash and Merge" your contribution into the ``main`` branch of Feature-engine.
passed and the code is up to date with feature-engine's main branch, we will be ready
to "Squash and Merge" your contribution into the ``main`` branch of feature-engine.
"Squash and Merge" combines all of your commits into a single commit which helps keep
the history of the repository clean and tidy.

Once your contribution has been merged into main, you will be listed as a
Feature-engine contributor :)
feature-engine contributor :)


Merge Pull Requests
Expand All @@ -486,7 +486,7 @@ Releases

After a few features have been added to the main branch by yourself and other
contributors, we will merge main into a release branch, e.g. 1.2.X, to release a new
version of Feature-engine to PyPI and conda-forge.
version of feature-engine to PyPI and conda-forge.


Keep your Fork up to Date
Expand Down Expand Up @@ -520,7 +520,7 @@ some conflicting files. You will need to resolve these conflicts and continue th
$ git push -f origin main

The previous command will update your fork (remote) so that your fork's main branch is in sync with
Feature-engine's main. Now, you need to rebase main onto your feature branch.
feature-engine's main. Now, you need to rebase main onto your feature branch.

4. Check out your feature branch::

Expand Down
8 changes: 4 additions & 4 deletions docs/contribute/contribute_docs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Contribute Docs
If you contribute a new transformer, or enhance the functionality of a current transformer,
most likely, you would have to add or update the documentation as well.

This is Feature-engine's documentation ecosystem:
This is feature-engine's documentation ecosystem:

- Feature-engine documentation is built using `Sphinx <https://www.sphinx-doc.org>`_ and is hosted on `Read the Docs <https://readthedocs.org/>`_.
- We use the `pydata sphinx theme <https://pypi.org/project/pydata-sphinx-theme/>`_.
Expand All @@ -20,7 +20,7 @@ To learn more about Sphinx check the `Sphinx Quickstart documentation <https://w
Documents organisation
----------------------

Feature-engine has just adopted Scikit-learn's documentation style, were we offer API
Feature-engine has just adopted scikit-learn's documentation style, were we offer API
documentation, as well as, a User Guide with examples on how to use the different transformers.

The API documentation is built directly from the docstrings from each transformer. If you
Expand All @@ -34,7 +34,7 @@ Docstrings
----------

The quickest way to get started with writing the transformer docstrings, is too look at the docstrings
of some of the classes we already have in Feature-engine. Then simply copy and paste
of some of the classes we already have in feature-engine. Then simply copy and paste
those docstrings and edit the bits that you need. If you copy and paste, make sure to delete
irrelevant parameters and methods.

Expand Down Expand Up @@ -77,7 +77,7 @@ dependencies. If you set up the development environment as we described in the
:ref:`contribute code guide <contribute_code>`, you should have those installed already.

Alternatively, first activate your environment. Then navigate to the root folder of
Feature-engine. And now install the requirements for the documentation::
feature-engine. And now install the requirements for the documentation::

$ pip install -r docs/requirements.txt

Expand Down
2 changes: 1 addition & 1 deletion docs/contribute/contribute_jup.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Contribute Jupyter notebooks
============================

We created a collection of Jupyter notebooks that showcase the main functionality of
Feature-engine's transformers. We link these notebooks throughout the main documentation
feature-engine's transformers. We link these notebooks throughout the main documentation
to offer users more examples and details about transformers and how to use them.

**Note** that the Jupyter notebooks are hosted in a separate
Expand Down
Loading