[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
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list