?dist
On Friday 20 November 2009, Andrew Barr wrote: > Hi R folks, > > I have a massive array (object name "points") in the following form > > [,1] [,2] > [1,] 1369 22 > [2,] 1370 22 > [3,] 1368 23 > [4,] 1369 23 > [5,] 1370 23 > [6,] 1371 23 > (10080 rows truncated) > > These represent pixel coordinates of interest in a jpeg image. I need > to find the distance from each point to all other points of interest. > The only way I can see to do this is by pythagoras and nested for > loops. > > distance<-function(x1,y1,x2,y2){sqrt((x2-x1)^2 + (y2-y1)^2)} #pythagoras > for(i in 1:nrow(points)){ > for(j in 1:nrow(points)){ > > dist<-c(dist,distance(points[i,1],point.array.indices[i,2],points[j,1],poi >nts[j,2])) } > } > > This is obviously prohibitively slow with >10000 rows in the array. > > Any thoughts on how to do this without for loops? I apologize in > advance if there is an obvious way around this. > > Thanks! > > Andrew Barr > University of Texas at Austin > > ______________________________________________ > 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. -- Dylan Beaudette Soil Resource Laboratory http://casoilresource.lawr.ucdavis.edu/ University of California at Davis 530.754.7341 ______________________________________________ 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.