Solution :
The most important thing here is you can not have factor/categorical response variables.
For e.g.:
> d=data.frame(f=factor(c(1,2,1,2,1,2)),x=runif(6))
> glm(f~x,data=d)
Error in glm.fit(x = c(1, 1, 1, 1, 1, 1, 0.351715633412823, 0.449422287056223, :
NA/NaN/Inf in 'y'
In addition: Warning messages:
1: In Ops.factor(y, mu) : - not meaningful for factors
2: In Ops.factor(eta, offset) : - not meaningful for factors
3: In Ops.factor(y, mu) : - not meaningful for factors
So if you really want to do a logistic regression you must change them to 0 and 1OR FALSE and TRUE, and you must use family=binomial as follows:
For e.g.:
d$f=d$f=="2"
glm(f~x,data=d,family=binomial)
Call: glm(formula = f ~ x, family = binomial, data = d)
Coefficients:
(Intercept) x
-0.9066 1.8922
Degrees of Freedom: 5 Total (i.e. Null); 4 Residual
Null Deviance: 8.318
Residual Deviance: 8.092 AIC: 12.09