Read Data

setwd("C:/Users/lfult/Desktop/Minoo/Minoo Survey")
mydata=read.csv("finalreg.csv")
for (i in 1:5){mydata[, i]=as.factor(mydata[,i])}
str(mydata)
## 'data.frame':    115 obs. of  5 variables:
##  $ Training : Factor w/ 2 levels "0","1": 2 2 2 1 2 1 1 1 2 2 ...
##  $ Plastic  : Factor w/ 2 levels "0","1": 1 2 2 1 1 1 2 1 2 2 ...
##  $ Metal    : Factor w/ 2 levels "0","1": 1 2 2 2 1 2 2 2 1 2 ...
##  $ Cardboard: Factor w/ 2 levels "0","1": 2 2 2 2 1 1 2 2 2 2 ...
##  $ Glass    : Factor w/ 2 levels "0","1": 1 2 2 1 2 1 2 2 1 2 ...

GLM

myf=function(x){ myglm=glm(mydata$Training~x,family=binomial)
return(summary(myglm))}
m1=myf(mydata$Plastic)
m2=myf(mydata$Metal)
m3=myf(mydata$Cardboard)
m4=myf(mydata$Glass)

myf2=function(x){result=c(exp(x[2]), 
                          exp(x[2]-qnorm(.975)*x[4]),
                          exp(x[2]+qnorm(.975)*x[4]),
                          x[8])
names(result)=c("Odds Ratio", "Lower CI", "Upper CI", "p-value")
return(result)}

plastic=myf2(m1$coefficients)
metal=myf2(m2$coefficients)
cardboard=myf2(m3$coefficients)
glass=myf2(m4$coefficients)

rbind(plastic,metal,cardboard,glass)
##           Odds Ratio  Lower CI Upper CI    p-value
## plastic    1.3883333 0.6324972 3.047396 0.41337609
## metal      2.1078431 0.9733616 4.564596 0.05856084
## cardboard  1.4678030 0.6332025 3.402459 0.37096891
## glass      0.6447508 0.3004730 1.383497 0.25988648

#Manual

myf3=function(x,y) return(table(x,y))
t1=myf3(mydata$Plastic,mydata$Training)
t2=myf3(mydata$Metal,mydata$Training)
t3=myf3(mydata$Cardboard,mydata$Training)
t4=myf3(mydata$Glass,mydata$Training)

myf4=function(x) return((x[2,2]/x[1,2])/(x[2,1]/x[1,1]))
myf4(t1)
## [1] 1.388333
myf4(t2)
## [1] 2.107843
myf4(t3)
## [1] 1.467803
myf4(t4)
## [1] 0.6447508