Wanted to illustrate a simple example to understand rate of change of web traffic over time using linear regression. My data is web traffic hits by day for past 8 months, here is top few rows:
…. through May 2015
First, I want to plot the data and add line of best fit:
plot(data$date, data$visits,pch=19,col="blue",main="Web Traffic", xlab="Date",ylab="Visits")
lm1 <- lm(data$visits ~ data$date)
To interpret this model, would be that we see 149 additional hits each day.
That model was great for absolute increase, but what if we want to average increase. To do so we can run the linear regression using log:
To interpret, would be a 0.3% increase in web traffic per day.
And other way we could look at change per day would be a generalized linear model with poisson.
glm1 <- glm(data$visits ~ data$date, family="poisson")
abline(lm1,col="red",lwd=3) # for linear model line
lines(data$date,glm1$fitted,col="blue",lwd=3) # lm fit for possion
confint(glm1,level=0.95) # CI
#2.5 % 97.5 %
#(Intercept) -55.999943551 -45.190626728
#data$date 0.002976299 0.003632503
To interpret, 95% confident the increase web hits/day falls between range of 0.003 and 0.004, which is right inline with previous method of using linear regression log.