Thank you both for your suggestions. I have another question - is there a specific way to access the individual elements of a 'list' variable? i.e.Â
dmi = matrix(rnorm(20),4,5) soi = matrix(rnorm(20),4,5) pe = matrix(rnorm(20),4,5) y <- list(dmi, soi, pe) y[[1]]  gives [,1]      [,2]      [,3]      [,4]      [,5] [1,] -0.54463900 1.6732445 -0.3807847 -1.0460530 -0.8142748 [2,] -0.49654004 -0.9634258 0.9074139 -0.1576030 -1.2268558 [3,] -1.61835766 -0.4240122 0.3626670 0.7182964 0.1576446 [4,] -0.06313983 0.6743465 -1.9897107 0.8027337 -1.4372131 But, I am interested in accessing the 1st column of 'dmi' matrix here - not as dmi[,1] but in terms of 'y'. Is it possible with 'list' function or something else? Thanks again. -- Regards, Maha Graduate Student Department of Geography Michigan State University Quoting Liviu Andronic <landronim...@gmail.com>: > On Wed, Dec 22, 2010 at 2:57 AM, Phil Spector > <spec...@stat.berkeley.edu> wrote: >> To make your loop work, you need to learn about the get function. >> I'm not going to give you the details because there are better >> approaches available. >> First, let's make some data that will give values which can be verified. >>  (All the correlations of the data you created >> are exactly equal to 1.)  And to make the code readable, I'll >> omit the ts.m prefix. >> >>> set.seed(14) >>> dmi = matrix(rnorm(20),4,5) >>> soi = matrix(rnorm(20),4,5) >>> pe = matrix(rnorm(20),4,5) >>> allmats = list(dmi,soi,pe) >> >> Since cor.test won't automatically do the tests for all columns >> of a matrix, I'll write a little helper function: >> >>> gettests = function(x)apply(x,2,function(col)cor.test(pe[,2],col) >>> tests = lapply(allmats,gettests) >> >> Now tests is a list of length 2, with a list of the output from >> cor.test for the five columns of the each matrix with pe[,2] >> (Notice that in your program you made no provision to store the results >> anywhere.) >> >> Suppose you want the correlations: >> >>> sapply(tests,function(x)sapply(x,function(test)test$estimate)) >> >>      [,1]    [,2] >> cor  0.12723615  0.1342751 >> cor  0.07067819  0.6228158 >> cor -0.28761533  0.6218661 >> cor  0.83731828 -0.9602551 >> cor -0.36050836  0.1170035 >> >> The probabilities for the tests can be found similarly: >> >>> sapply(tests,function(x)sapply(x,function(test)test$p.value)) >> >>      [,1]    [,2] >> [1,] 0.8727638 0.86572490 >> [2,] 0.9293218 0.37718416 >> [3,] 0.7123847 0.37813388 >> [4,] 0.1626817 0.03974489 >> [5,] 0.6394916 0.88299648 >> > Hmisc already provides a function for doing this, rcorr(). Try to > compute correlations using Rcmdr for an example. > > Regards > Liviu > > >> (Take a look at the "Values" section in the help file for cor.test >> to get the names of other quantities of interest.) >> >> The main advantage to this approach is that if you add more matrices >> to the allmats list, the other steps automaticall take it into account. >> >> Hope this helps. >>                     - Phil Spector >>                     Statistical >> Computing Facility >>                     Department of >> Statistics >>                     UC Berkeley >>                     >> spec...@stat.berkeley.edu >> >> >> >> >> >> On Tue, 21 Dec 2010, govin...@msu.edu wrote: >> >>> >>> >>> Hi, >>> >>> I am having trouble with matrices. I?have 2 matrices as given below, and I >>> am interested in using these matrices inside "for" loops used to calculate >>> correlations. I am creating a list with the names of the matrices assuming >>> this list could be indexed inside the 'for' loop to retrieve the matrix >>> values. But, as expected the code throws out an error. Can someone >>> suggest a >>> better way to call these matrices inside the loops? >>> >>> ts.m.dmi <- matrix(c(1:20), 4, 5) >>> ts.m.soi <- matrix(c(21:40), 4, 5) >>> ts.m.pe <- matrix(c(21:40), 4, 5) >>> >>> factors <- c("ts.m.dmi", "ts.m.soi") >>> for (j in 0:1){ >>> y <- factors[j+1] >>> >>> for (i in 1:5){ >>> >>> cor.pe.y <- cor(ts.m.pe[,2], y[,i]) >>> ct.tst <- cor.test(ts.m.pe[,2], y[,i]) >>> } >>> } >>> >>> Thanks for your time. >>> >>> -- >>> Regards, >>> Maha >>> Graduate Student >>>     [[alternative HTML version deleted]] >>> >>> >> >> ______________________________________________ >> R-help@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. >> > > > > -- > Do you know how to read? > http://www.alienetworks.com/srtest.cfm > http://goodies.xfce.org/projects/applications/xfce4-dict#speed-reader > Do you know how to write? > http://garbl.home.comcast.net/~garbl/stylemanual/e.htm#e-mail > [[alternative HTML version deleted]]
______________________________________________ R-help@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.