# Effect of Block-Based Python Programming Environment on Programming Learning
## 2 Related Work
### Regression Analysis  
Regression analysis is a statistical technique that enables the prediction of values for dependent variables based on the values of independent variables [36]. It accomplishes this by establishing linear equations that represent the relationships between the independent and dependent variables. In other words, it examines the extent to which dependent variables change based on the changes in independent variables and estimates the predictive power of independent variables with regard to dependent variables. Simple regression analysis assumes linear relationships between independent and dependent variables and is expressed as follows:  
\[Y^{\prime}=\beta_{0}+\beta_{1}X_{i}+\epsilon_{i}\]  
\(\beta_{0}\): When \(X_{i}=0\), the expected value of \(Y_{i}\) (regression constant, intercept);\(\beta_{1}\): Population's regression coefficient (slope of regression line);  
\(\varepsilon_{i}:\) Error that is not explained by \(X_{i}\). In regression analysis, the least squares method is utilized to estimate the intercept (\(\beta_{0}\)) and regression (\(\beta_{1}\)) coefficients. These coefficients minimize differences between the actual values of the dependent variable (\(\gamma\)) and the predicted values (\(\gamma^{\prime}\)) obtained using the independent variables. The goal is to find the regression equation that minimizes the overall difference between the observed and predicted values of the dependent variable. The total change in the \(Y\) value is classified into two parts: those that can and cannot be explained by the regression equation. \[\sum(Y_{i}-\overline{Y})^{2}=\sum(Y_{i}^{\prime}-\overline{Y})^{2}+\sum(Y_{i }-Y^{\prime})^{2}\]  
\[SS_{T}=SS_{R}+SS_{E}\]  
\(SS_{T}:\) Total deviation sum of squares of \(Y\);  
\(SS_{R}:\) Change that can be explained by the regression equation (regression deviation sum of squares);  
\(SS_{E}:\) Change that cannot be explained by the regression equation (residual sum of squares). An analysis of the variance table for simple regression can be seen in Table 1.  
One criterion for judging the suitability of a regression equation is the determination coefficient (\(R^{2}\)). It indicates the explanatory power of an independent variable for a dependent variable and refers to the ratio of the variance, obtained using the regression equation, to the total variance of the dependent variable. The closer the value of the determination coefficient is to 1, the greater the explanatory power of the independent variable [37]. \[R^{2}=\frac{SS_{R}}{SS_{T}}=1-\frac{SS_{E}}{SS_{T}}\]  
Simple regression analysis is used for analyzing the predictive power of an independent variable with regard to a dependent variable, whereas multiple regression analysis is a statistical method used to determine the variable that affects the dependent variable among several independent variables. The linear equation for the multiple regression model is as follows:  
\[Y_{i}=\beta_{0}+\beta_{1}X_{1i}+\beta_{2}X_{2i}+\ldots+\beta_{k}X_{ki}+ \varepsilon_{i}\]  
where \(\beta_{k}\) is the unstandardized regression coefficient, i.e., the partial slope of the regression equation. It indicates the change in the \(Y\) value when the value of a certain independent variable \(X_{k}\) is increased by 1, while those of the other independent variables are fixed. There are several methods for selecting the variables that must be included in the regression model to find the optimal regression equation, such as enter, forward selection, backward elimination, and stepwise selection [18]. Stepwise selection determines the optimal regression equation through an appropriate combination of adding and removing independent variables. As the variables are added individually, the significance of the variables already included in the model is reviewed, and those that are insignificant are excluded. This method is helpful for extracting significant variables.