# [R] Running regression (lm, lrm) 100+ times and saving the results as matrix

Mike H. Ryu hokyung.ryu at yale.edu
Wed Apr 30 01:38:09 CEST 2008

```Much thanks to Chuck Cleland for the following solution:

t(sapply(split(mydf, mydf\$TIME), function(x){coefficients(summary(glm(X ~ A
+ B, data = x, family=binomial)))}))

To see what's in the 12 columns of the matrix returned by those lines, look
at the results this way:

lapply(split(mydf, mydf\$TIME), function(x){coefficients(summary(glm(X ~ A +
B, data = x, family=binomial)))})

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
Behalf Of Mike H. Ryu
Sent: Tuesday, April 29, 2008 7:27 AM
To: r-help at r-project.org
Subject: [R] Running regression (lm, lrm) 100+ times and saving the results
as matrix

An undergraduate here, so do not hesitate to let me know if you feel that
I'm heading in a wrong direction.

I have a data frame containing panel data across 10 years (hence 120
months).  I want to be able to run regression separately for each month (or
year).  The below shows how I ran the regression for each month, but I need
to know how I would combine the regression results together into a matrix
possibly.

Thank you!

Mike

-------------------------------

m = max(data\$TIME)

# define regmatrix

for(i in 1:m){

g=runreg(data, i)

# attach g to regmatrix

}

runreg = function(data, index){

datainterim = subset(data, TIME==index)

g = lrm(X ~ A + B, datainterim)

return(g)

}

[[alternative HTML version deleted]]

______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help