[Rd] glm() in R (PR#1457)

Thomas Lumley tlumley@u.washington.edu
Sat, 13 Apr 2002 10:29:15 -0700 (PDT)


On 13 Apr 2002, Peter Dalgaard BSA wrote:

> popescul@unagi.cis.upenn.edu writes:
>
> >  Hello,
> >
> >  I was using R for logistic regression modeling (glm() with binomial
> > family) and have noticed that it' can't handle more than 100 predictors
> > (reports syntax error)
> > Is it a bug, or a language restiction ?
> >
> >  I would be very grateful if you let me know possible ways around the
> > problem, as I need R for problems with many attributes.
> >
> >  Thank you,
> >
> >  Alex.
>
> If you get a syntax error, then I wouldn't expect that glm() itself is
> causing it. More likely, you are exceeding the line length limit in
> the parser. Try splitting your command over several lines, or use
> simplified formulas like  glm(V1~.,data=d,family=binomial).

To be specific, I defined
y<-rbinom(800,1,.5)
x<-as.data.frame(matrix(rnorm(800*300),ncol=300))

and the following all work
# using . to specify variables implicitly
glm(y~.,data=x,family=binomial())

# constructing a formula object
ff<-formula(paste("y",paste(names(x),collapse="+"),sep="~")
glm(ff,data=x,family=binomial())

# constructing the whole call as a text string and evaluating it
expr<-paste("glm(y~",paste(names(x),collapse="+"),",data=x,family=binomial())")
eval(parse(text=expr)[[1]])

#pasting the whole thing in multiple lines
 glm(y ~ V1 + V2 + V3 + V4 + V5 + V6 + V7 + V8 + V9 + V10 + V11 +
    V12 + V13 + V14 + V15 + V16 + V17 + V18 + V19 + V20 + V21 +
    V22 + V23 + V24 + V25 + V26 + V27 + V28 + V29 + V30 + V31 +
     V32 + V33 + V34 + V35 + V36 + V37 + V38 + V39 + V40 + V41 +
     V42 + V43 + V44 + V45 + V46 + V47 + V48 + V49 + V50 + V51 +
    V52 + V53 + V54 + V55 + V56 + V57 + V58 + V59 + V60 + V61 +
    V62 + V63 + V64 + V65 + V66 + V67 + V68 + V69 + V70 + V71 +
    V72 + V73 + V74 + V75 + V76 + V77 + V78 + V79 + V80 + V81 +
    V82 + V83 + V84 + V85 + V86 + V87 + V88 + V89 + V90 + V91 +
    V92 + V93 + V94 + V95 + V96 + V97 + V98 + V99 + V100 + V101 +
    V102 + V103 + V104 + V105 + V106 + V107 + V108 + V109 + V110 +
   V111 + V112 + V113 + V114 + V115 + V116 + V117 + V118 + V119 +
   V120 + V121 + V122 + V123 + V124 + V125 + V126 + V127 + V128 +
   V129 + V130 + V131 + V132 + V133 + V134 + V135 + V136 + V137 +
   V138 + V139 + V140 + V141 + V142 + V143 + V144 + V145 + V146 +
   V147 + V148 + V149 + V150 + V151 + V152 + V153 + V154 + V155 +
    V156 + V157 + V158 + V159 + V160 + V161 + V162 + V163 + V164 +
   V165 + V166 + V167 + V168 + V169 + V170 + V171 + V172 + V173 +
    V174 + V175 + V176 + V177 + V178 + V179 + V180 + V181 + V182 +
    V183 + V184 + V185 + V186 + V187 + V188 + V189 + V190 + V191 +
    V192 + V193 + V194 + V195 + V196 + V197 + V198 + V199 + V200 +
    V201 + V202 + V203 + V204 + V205 + V206 + V207 + V208 + V209 +
    V210 + V211 + V212 + V213 + V214 + V215 + V216 + V217 + V218 +
  V219 + V220 + V221 + V222 + V223 + V224 + V225 + V226 + V227 +
     V228 + V229 + V230 + V231 + V232 + V233 + V234 + V235 + V236 +
     V237 + V238 + V239 + V240 + V241 + V242 + V243 + V244 + V245 +
     V246 + V247 + V248 + V249 + V250 + V251 + V252 + V253 + V254 +
     V255 + V256 + V257 + V258 + V259 + V260 + V261 + V262 + V263 +
     V264 + V265 + V266 + V267 + V268 + V269 + V270 + V271 + V272 +
     V273 + V274 + V275 + V276 + V277 + V278 + V279 + V280 + V281 +
     V282 + V283 + V284 + V285 + V286 + V287 + V288 + V289 + V290 +
  V291 + V292 + V293 + V294 + V295 + V296 + V297 + V298 + V299 +
  V300, data = x, family = binomial())

but pasting it as a single line gives a syntax  error.


	-thomas

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._