Ejemplo n.º 1
0
 def test_SharedWallsRatio(self):
     self.df_buildings["swr"] = mm.SharedWallsRatio(self.df_buildings).series
     self.df_buildings["swr_array"] = mm.SharedWallsRatio(
         self.df_buildings, perimeters=self.df_buildings.geometry.length
     ).series
     nonconsecutive = self.df_buildings.drop(2)
     result = mm.SharedWallsRatio(nonconsecutive).series
     check = 0.3424804411228673
     assert self.df_buildings["swr"][10] == check
     assert self.df_buildings["swr_array"][10] == check
     assert result[10] == check
Ejemplo n.º 2
0
 def test_SharedWallsRatio(self):
     self.df_buildings["swr"] = mm.SharedWallsRatio(self.df_buildings,
                                                    "uID").series
     self.df_buildings["swr_uid"] = mm.SharedWallsRatio(
         self.df_buildings, range(len(self.df_buildings))).series
     self.df_buildings["swr_array"] = mm.SharedWallsRatio(
         self.df_buildings, "uID", self.df_buildings.geometry.length).series
     nonconsecutive = self.df_buildings.drop(2)
     result = mm.SharedWallsRatio(nonconsecutive, "uID").series
     check = 0.3424804411228673
     assert self.df_buildings["swr"][10] == check
     assert self.df_buildings["swr_uid"][10] == check
     assert self.df_buildings["swr_array"][10] == check
     assert result[10] == check
Ejemplo n.º 3
0
 def time_SharedWallsRatio(self):
     mm.SharedWallsRatio(self.df_buildings)
import momepy as mm
import geopandas as gpd
import libpysal

tess = gpd.read_file("files/elements.gpkg", layer="tessellation")
blg = gpd.read_file("files/elements.gpkg", layer="buildings")
blocks = gpd.read_file("files/elements.gpkg", layer="blocks")
streets = gpd.read_file("files/elements.gpkg", layer="streets")

blg["mtbSWR"] = mm.SharedWallsRatio(blg, "uID", "sdbPer").series

queen_1 = libpysal.weights.contiguity.Queen.from_dataframe(tess, ids="uID")

blg["mtbAli"] = mm.Alignment(blg, queen_1, "uID", "stbOri").series
blg["mtbNDi"] = mm.NeighbourDistance(blg, queen_1, "uID").series

tess["mtcWNe"] = mm.Neighbours(tess, queen_1, "uID", weighted=True).series
tess["mdcAre"] = mm.CoveredArea(tess, queen_1, "uID").series

str_q1 = libpysal.weights.contiguity.Queen.from_dataframe(streets)

streets["misRea"] = mm.Reached(streets,
                               tess,
                               "nID",
                               "nID",
                               spatial_weights=str_q1,
                               mode="count").series
streets["mdsAre"] = mm.Reached(streets,
                               tess,
                               "nID",
                               "nID",