300x300 isn't terribly large; looping should work just fine. But I'm confused about a 2x2 submatrix: I would have thought that a submatrix would be adjacent elements, like x[1:2, 1:2] or x[13:14, 296:297] but your loop compares all possible sets of four elements, so the matrix position doesn't matter except for avoiding duplication.
Maybe a bit more about what you're trying to accomplish (including the function you want to perform with those four elements) would be helpful. Sarah On Mon, Oct 22, 2012 at 1:10 PM, CMB123 <craig.biel...@gmail.com> wrote: > Hi all, > > I'm working with a large data set (on the order of 300X300) and trying to > apply a function which compares the elements of all possible 2x2 > submatrices. There are rc(r-1)(c-1) such submatrices, so obviously the naive > method of looping through the rows and columns is computationally unfeasible > for my data set: > > for(i in 1:(nrow(data)-1)) { > for(j in (i+1):nrow(data)) { > for (m in 1:(ncol(data)-1)) { > for (n in (m+1):ncol(data)) { > > I have tried using the outer and apply functions to vectorize the task, but > I can't seem to figure out the best method (or any method, for that matter) > to help with what I'm trying to do. > > Any and all help is much appreciated! Thanks in advance, > > C > > -- Sarah Goslee http://www.functionaldiversity.org ______________________________________________ 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.