# A Proposal for a New Python Library Implementing Stepwise Procedure
## 2 Background  
### Multiple Linear Regression  
Multiple linear regression (MLR) models are a class of statistical models used to analyze the relationship between a continuous dependent variable and several independent variables (or predictors) [27; 28; 29]. [PERSON] et al. [25] state that MLR primarily enables analyses of the relationship between several explanatory variables, presented in linear form, and a quantitative dependent variable. Thus, it is possible to define a general MLR model as Equation (1):  
\[Y_{i}=\alpha+\beta_{1}X_{i1}+\beta_{2}X_{2i}+\cdots+\beta_{k}X_{ki}+u_{i} \tag{1}\]  
where \(Y\) represents the dependent variable; \(\alpha\) matches the intercept; \(\beta_{j}\) (j = 1, 2, \(\ldots\), k) are the coefficients of each variable (angular coefficients); \(X_{j}\) is the explanatory variables (metrics or dummies); \(u\) is the error term (difference between the actual and predicted values of \(Y\) through the model for each observation). The subscript \(i\) represents each sample's observations under analysis (\(i\) = 1, 2, \(\ldots\), n, where \(n\) is the sample size). It is possible to write the error term \(u_{i}\), for each observation \(i\), as presented in Equation (2):  
\[u_{i}=Y_{i}-\hat{Y}_{i} \tag{2}\]  
\(\hat{Y}_{i}\) represents the predicted value of the dependent variable that the estimated model will generate for the observation \(i\)[6]. The error terms \(u\) occur due to some reasons that need to be known and considered by researchers [25; 30; 31], such as the existence of aggregated and non-random variables, failures during model specification, and errors in data collection. One of the most used techniques for estimating a multiple linear regression model is the ordinary least squares (OLS) method [6]. A model estimated by OLS must determine \(\alpha\) and \(\beta\), making the sum of the residues' squares as small as possible [32]. In this context, an important concept related to the explanatory power of the regression model is the coefficient of adjustment or explanation (\(R^{2}\)) [6]. Considering a multiple regression model, \(R^{2}\) represents how much of the behavior of variable \(Y\) is explained by the joint variation of variable \(X\) considered in the model. However, [PERSON] and [PERSON] [32] point out that there is not necessarily a cause-and-effect relationship between variables \(X\) and \(Y\). [PERSON] and [PERSON] [33] define the \(R^{2}\) coefficient as the fraction of the variance of the \(Y_{I}\) sample explained by the explanatory variables. It is possible to use the \(R^{2}\) coefficient to measure the degree of fit of the proposed model [31]. Empirical studies highlight the importance of including a comprehensive set of independent variables in MLR models [34; 35]. However, it is essential to consider the challenges associated with including many independent variables, such as multicollinearity, which can distort the results and hinder the interpretation of the estimated coefficients [36]. Furthermore, as discussed in the introduction, it is well-known in the context of applied sciences that, for predictive purposes, including irrelevant independent variables can reduce not only the model's efficiency but also its interpretability [6; 24; 26]. In this regard, selecting the appropriate variables is crucial to avoid introducing unnecessary elements that do not contribute to the model's predictive power [37; 38]. Therefore, including an adequate number of independent variables in MLR models requires a careful analysis of the theoretical and empirical relationships between variables. It is essential to seek a balance between the inclusion of relevant variables and the consideration of the problems associated with multicollinearity [3], since it is unnecessary to include variables when one may already explain the behavior of the other [6].