Dear R Wizards,
After much frustration and days of confusion I have finally broken down and
am asking for help, which I dont like doing, but I just cant figure this
one out on my own. Ive conducted a laboratory experiment testing the
effects of temperature and salinity on whether or not a biological event
will occur (Go or NoGo). Ive coded the factors temperature and salinity
as factors for the binomial glm, and I havent had any trouble fitting the
model and checking assumptions.
I am however having trouble with the predict.glm function. I want to
create a graph using my data that is similar to the one produced by the
budworm example at the bottom of the predict.glm R documentation. In my
case I want temperature on the x axis, probability on the y axis, and the
lines on the graph to represent the probability of the event occurring at
the different salinities tested at the different temperatures.
I created a smaller version of my data and have included it and the R code
I used below. I get two main problems that I hope youre willing to help
with.
1. When I input the text argument the output in the graph gives salinity
values that are superimposed on one another. And, the values dont seem to
make sense they are returned as probabilities of either 1.0 or 0.
2. When I input the lines argument I get the following error messages:
Error: variable 'fTemp' was fitted with type "factor" but type "numeric"
was supplied
In addition: Warning message:
In model.frame.default(Terms, newdata, na.action = na.action, xlev =
object$xlevels) : variable 'fTemp' is not a factor
grrrrrrrrrr
Pleasehelp<-read.table("Rhelp.txt",h=T)
attach(Pleasehelp)
fix(Pleasehelp)
Temp Sal Go Total
5 34 1 1
5 34 1 1
5 34 1 1
5 21 1 1
5 21 1 1
5 21 0 1
10 34 1 1
10 34 0 1
10 34 1 1
10 21 1 1
10 21 0 1
10 21 0 1
15 34 0 1
15 34 0 1
15 34 0 1
15 21 0 1
15 21 0 1
15 21 0 1
fTemp<-factor(Temp)
fSal<-factor(Sal)
Go<-Go
NoGo<-Total-Go
Went<-cbind(Go,NoGo)
DF<-data.frame(fTemp,fSal,Went,Total)
glm<-glm(Went~fTemp+fSal+fTemp*fSal,family="binomial",data=DF)
require(graphics)
plot(c(5,15),c(0,1),type="n",xlab="Temperature",ylab="Probability of going")
text(Temp,Go/Total,as.character(Sal))
ld<-(seq(5,15,1))
lines(ld,predict(glm,data.frame(fTemp=ld,fSal=factor(rep("34",length(ld)),levels=levels(fSal))),type="response"))
Thank you very much for your time and expertise!
Kindly,
Chad
[[alternative HTML version deleted]]
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.