From popescul@unagi.cis.upenn.edu  Sat Apr 13 23:29:47 2002
From: popescul@unagi.cis.upenn.edu (Alexandrin Popescul)
Date: Sat, 13 Apr 2002 18:29:47 -0400 (EDT)
Subject: [Rd] glm() in R (PR#1457)
In-Reply-To: <Pine.A41.4.44.0204131015470.182444-100000@homer01.u.washington.edu>
Message-ID: <Pine.GSO.4.44.0204131829050.1521-100000@unagi.cis.upenn.edu>


 Thomas and Peter,

 this was very helpful,

 Thanks,

 Alex.


On Sat, 13 Apr 2002, Thomas Lumley wrote:

> 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
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._


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