[R] what's wrong with my simulation programs on logistic	regression
    Prof Brian Ripley 
    ripley at stats.ox.ac.uk
       
    Thu Aug 31 16:55:40 CEST 2006
    
    
  
On Thu, 31 Aug 2006, zhijie zhang wrote:
> Dear friends,
>  I'm doing a simulation on logistic regression model, but the programs can't
> work well,please help me to correct it and give some suggestions.
> My programs:
> data<-matrix(rnorm(400),ncol=8)  #sample size is 50
> data<-data.frame(data)
> names(data)<-c(paste("x",1:8,sep=""))  #8 independent variables,x1-x8;
> #logistic regression model is logit(y)=x1+x2+x3+x4+x5+x6+x7+x8
Rather it is logit(p) = ...,  and y ~ binomial(1, p)
There is a different sort of 'logistic regression' with 
y = exp(eta)/(1+exp(eta)) + epsilon
but you fit that by nls, not glm.
> data$y<-exp(data$x1+data$x2+data$x3+data$x4+data$x5+data$x6+data$x7+data$x8)/(1+(data$x1+data$x2+data$x3+data$x4+data$x5+data$x6+data$x7+data$x8))
You need exp()/(1+exp()), and the second exp is missing.
Once you have p, you can use data$y <- rbinom(length(p), 1, p)
> logist<-glm(y~.,family=binomial(),data=simdata)
> *Warning messages:*
> 1: algorithm can't converge in: glm.fit(x = X, y = Y, weights = weights,
> start = start, etastart = etastart,
> 2: the probability is 0 or 1 in: glm.fit (x = X, y = Y, weights = weights,
> start = start, etastart = etastart,
You do not have a Bernoulli response: it often helps to look at your 
simulated data to see if it makes sense (just as you would look at real 
data, I hope).
-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595
    
    
More information about the R-help
mailing list