Thank you for your answer. I have a shapefile with, say, counties, and I got another shapefile with the roads. ¿What if a county does not intersect any road?
El jue., 20 de jun. de 2019 a la(s) 19:08, Rolf Turner ( r.tur...@auckland.ac.nz) escribió: > > On 21/06/19 12:26 PM, Rolando Valdez wrote: > > > Dear community, > > > > Is there any way to create a spatial weight matrix based on road > distance? > > I am trying to use the road distance between two points instead of > > euclidean distance. > > > > I've seen that there is a package named osrm. Can anyone give some > advice? > > I don't know anything about "osrm". Calculating "road distances" can be > done in the spatstat package reasonably easily, if you take the trouble > to represent your collection of roads as a "linnet" object. > > Given that you have done so, suppose that your linnet object is "L" and > that you have vectors "x" and "y" specifying the points on L (i.e. on > your roads) between which you want to know the distances. > > Do: > > X <- lpp(data.frame(x=x,y=y),L) > dMat <- pairdist(X) > > The object "dMat" is a (symmetric) square matrix; dMat[i,j] is the > distance between point i and point j. (Of course the diagonal entries > are all 0.) > > If your collection of roads is specified by means of a shapefile, > vignette("shapefiles") will tell you how to turn this collection into a > "psp" ("planar segment pattern") object; the function (method) > as.linnet.psp() can then be used to turn the "psp" object into a > "linnet" object. > > HTH > > cheers, > > Rolf Turner > > -- > Honorary Research Fellow > Department of Statistics > University of Auckland > Phone: +64-9-373-7599 ext. 88276 > -- Rol~ [[alternative HTML version deleted]] _______________________________________________ R-sig-Geo mailing list R-sig-Geo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo