Hello. Currently, among GeoComputaion community in Japan, GeoDa's calculation speed of spatial weight matrices of polygons are highly evaluated. Any idea to improve this of spdep? Regards.
How to improve calculation time of spatial weight matrices on spdep
3 messages · Hisaji ONO, Roger Bivand
Hisaji:
On Tue, 9 May 2006, Hisaji ONO wrote:
Hello. Currently, among GeoComputaion community in Japan, GeoDa's calculation speed of spatial weight matrices of polygons are highly evaluated. Any idea to improve this of spdep?
At present poly2nb() uses two steps, first to try to find candidate neighbours using bounding boxes, then to check candidates for boundary points within a snap distance. Both steps are in C, but the main loop is in R. To go faster, it would mean moving everything to C, avoiding the (n*(n-1))/2 loop in R. Profiling the function would show where time is being used - I can try to do that. On a map of all the US counties, Rprof() shows that there may be a way to reduce time by simplifying as.double() calls - because numeric data in R can be at least integer or double, it needs coercing before being passed to C. I'll try to do something with this, but it may be that there are other ways (passing a whole SpatialPolygons object to C, because the coordinates there are known to be of storage mode "double"). Speed is - I think - not so important, because the neighbour lists only need to be made once for each set of polygons, and the function does work even with very large numbers of polygons. Then the output list can be stored as an R object, or written out as a GAL file. Do you have examples where speed matters more, or are there particular kinds of configurations of sets of polygons that are a problem? Best wishes, Roger
Regards.
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo
Roger Bivand Economic Geography Section, Department of Economics, Norwegian School of Economics and Business Administration, Helleveien 30, N-5045 Bergen, Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43 e-mail: Roger.Bivand at nhh.no
On Tue, 9 May 2006, Hisaji ONO wrote:
Hello. Currently, among GeoComputaion community in Japan, GeoDa's calculation speed of spatial weight matrices of polygons are highly evaluated. Any idea to improve this of spdep?
Further to my previous message, the next release of spdep will have time savings like from 1000 seconds reduced to 300 seconds on a 3500 polygon data set. Thanks for pointing this out, with Rprof(), it wasn't difficult to find a cheap way to economise (only check storage mode once per polygon). Roger
Regards.
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo
Roger Bivand Economic Geography Section, Department of Economics, Norwegian School of Economics and Business Administration, Helleveien 30, N-5045 Bergen, Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43 e-mail: Roger.Bivand at nhh.no