Feature engineering
The process of preparing data for ML is somewhat iterative. We will be doing EDA, cleaning data, performing feature selection, and feature engineering, but these steps will be mixed together depending on our situation. For example, we might start with some basic EDA (pandas profiling) and then look at univariate statistics for feature selection as the next step in our EDA. Based on the results, we could remove some features. We might also notice some data that needs cleaning along the way (for example, erroneous strings in numeric columns that need cleaning) and may need to repeat some earlier EDA and feature selection steps after cleaning. We might also notice columns that could be used in feature engineering as part of this process.
Feature engineering is creating new features based on existing features. We use this along with data cleaning to prepare our data for ML, so our algorithms perform better (for example, making predictions with higher accuracy)...