# How Do I Create a Better Model?

Disclaimer: I am a senior undergraduate student of Political Science with little proficiency in Data Science; please help me understand better and forgive any ensuing statistical illiteracy!

TL;DR: I created an OLS regression model using appropriate variable selection methods—wherein I reduced seventeen predictor variables to seven. Now, I am illustrating my OLS assumptions w.r.t to this model and asking for help in creating a better model.

## Background Information

I employed OLS Regression in order to study the correlation between my dependent variable of Infant Mortality Rate (per 1000 live births) with respect to the following predictor variables: (1) Mothers received Antenatal care (%); (2) Mothers received Financial Assistance under JSY Scheme (%); (3) Average expenditure at a public health facility(Rs.); (4) Adult Female Literate (%); (5) Per capita NSDP (Rs.); (6) Households with Sanitation (%); (7) Households with Electricity (%).

I am studying this in the context of the Indian nation-state; therefore, my samples—or—N = 32 (the Indian States and UTs excluding those for whom no information was made available).

When I ran a linear multiple OLS Regression on this model (unweighted and not generalized), I obtained the following vital information:

1. Residual Standard Error: 7.529 on 24 Degrees of Freedom
2. Multiple R-squared: 0.7324
4. F-statistic: 9.384 on 7 and 24 DF
5. p-value: 1.397e-05

## Assumption Issues

Using the sjmisc and sjPlot packages, I ran the following code to test my OLS assumptions:

require(sjmisc)
require(sjPlot)
plot_model(Model1, type = "diag")


I am sharing the results of the assumptions.

## Questions/Clarifications

Based on the assumption and regression results, do you all think that I am on the right track at all? From what I could gather, I can obviously see some issues of (1) non-normal distribution of residuals and (2) heteroscedasticity. However, do you all think that my assumptions of multicollinearity and non-normality of residuals and outliers (Q-Q) are alright?

More importantly, how do I fix these issues and attempt to create a better second model? Please consider that I am a relative beginner to the whole process, so forgive me for not knowing the proper direction. Is my preliminary regression model and result even decent? If so, how should I further improve (1) the normality of my residuals; (2) homoscedasticity; (3) regression results?

Lastly, are there any problems in the way I tested my OLS assumptions?

Thank you so much for your time. Have a great day!

As far as testing the assumptions in alternative ways, this seems like a reasonable approach. Since you're using R, you could also consider using the "gvlma" package. This package lets you specify your normal linear regression using lm() and it tests all the assumptions for linear regression, including the assumption of the linear link function (a significant result there may support the need to move to a generalized linear model).