# R program for logistic regression exercise # 1 (VER 16.1)

calf <- read.csv("h:/vhm/vhm802/data_csv/calf.csv")

#Q1: descriptive statistics
summary(calf)
table(calf$sepsis)
table(calf$breed)
table(calf$sex)
table(calf$attd)
table(calf$eye)
table(calf$jnts)
table(calf$post)
table(calf$umb)

#Q2-Q3: unconditional associations - categorical variables
print(t<- xtabs(~sepsis+breed, data=calf)); summary(t)
print(t<- xtabs(~sepsis+sex, data=calf)); summary(t)
print(t<- xtabs(~sepsis+attd, data=calf)); summary(t)
print(t<- xtabs(~sepsis+eye, data=calf)); summary(t); fisher.test(t)
print(t<- xtabs(~sepsis+jnts, data=calf)); summary(t); fisher.test(t)
print(t<- xtabs(~sepsis+post, data=calf)); summary(t)
print(t<- xtabs(~sepsis+umb, data=calf)); summary(t)

#Q2-Q3: unconditional associations - continuous variables
t.test(age~sepsis, data=calf)
t.test(dehy~sepsis, data=calf)
t.test(pulse~sepsis, data=calf)
t.test(resp~sepsis, data=calf)
t.test(temp~sepsis, data=calf)

#Q4: logistic model with -post- and -umb-
calf.logreg <- glm(sepsis~ as.factor(post)+umb, family=binomial(), data=calf, na.action=na.exclude)
summary(calf.logreg)
beta<- calf.logreg$coef
beta;exp(beta)# exponentiated coefficients (= OR, except for intercept)
# predictions to illustrate effects
new <- data.frame( cbind(post=rep(0:2, each=2), umb=rep( c(0,1),3)))
calf.pred <- cbind(new, predict.glm(calf.logreg, new, type="response"))
head(calf.pred)

#Q5: predicted probability
calf$predp<- fitted.values(calf.logreg)
calf[calf$case==1294,]
