While I was working on an exercise based this book, I discovered something interesting. When I fit a logit and simple linear probability model on the data (see code below), the predictions are almost identical. Intrigued by this, I decided to plot the data and discovered that the fitted lines almost overlap.
Is this pure coincidence or due to the nature of the data? I noted that the classes are not very well separated by the predictor, I assume this is the reason behind this? It would be great if someone could explain in which cases a logit model assimilates a simple linear probability model.
Here is the R code that I used:
library(ggplot2) library(dplyr) library(ISLR) glm.fit <- glm(Direction ~ Lag2, data = Weekly, family = binomial) Weekly$Direction <- as.numeric(Weekly$Direction)-1 lm.fit <- lm(Direction ~ Lag2, data = Weekly) Weekly %>% ggplot(aes(x=Lag2, y=Direction)) + geom_point() + stat_smooth(method="glm", method.args=list(family="binomial"), color="#FF9999", se=FALSE) + geom_smooth(method=lm , color="steelblue", se=FALSE) + geom_hline(yintercept = 1, linetype="longdash") + geom_hline(yintercept = 0, linetype="longdash") + geom_text(aes(x = -15,y = 0.9, label = "Up")) + geom_text(aes(x = 10,y = 0.1, label = "Down")) + xlab("% Change two days before") + ylab("Direction") + theme_classic()