library(ggplot2)
ggplot(df_firms, aes(x = Total_Assets, y = RD_Expenditure)) + geom_point(alpha = 0.6, color = “steelblue”) + geom_smooth(method = “lm”, se = FALSE, color = “red”) + labs(title = “R&D Expenditure vs Firm Size”, x = “Total Assets (millions)”, y = “R&D Expenditure”) + theme_minimal() model_ols <- lm(RD_Expenditure ~ Total_Assets, data = df_firms) summary(model_ols) plot(model_ols, which = 1) plot(model_ols, which = 2) hist(residuals(model_ols), breaks = 20, main = “Residual Distribution”, col = “lightblue”) library(lmtest) library(car)
bptest(model_ols)
shapiro.test(residuals(model_ols)) library(MASS)
boxcox(model_ols, lambda = seq(-2, 2, by = 0.1)) model_log <- lm(log(RD_Expenditure) ~ log(Total_Assets), data = df_firms) summary(model_log) model_log <- lm(log(RD_Expenditure) ~ log(Total_Assets), data = df_firms) summary(model_log) plot(model_log, which = 1) # Residuals vs Fitted plot(model_log, which = 2) # Normal Q-Q head(df_firms) model_log <- lm(log(RD_Expenditure) ~ log(Total_Assets), data = df_firms) summary(model_log)
plot(model_log, which = 1) plot(model_log, which = 2) ```{r}
```data.frame( Firm_ID = 1:n, Total_Assets = firm_size, RD_Expenditure = rd_expenditure )lm(log(RD_Expenditure) ~ log(Total_Assets), data = df_firms) traceback()