riprap-nyc / app /assets /schools.py
seriffic's picture
Bulk register + compare modes
304d3b7
"""NYC DOE School Point Locations (Socrata a3nt-yts4)."""
from __future__ import annotations
import geopandas as gpd
from app.spatial import DATA, load_layer
BORO = {"1": "Manhattan", "2": "Bronx", "3": "Brooklyn", "4": "Queens", "5": "Staten Island"}
def load() -> gpd.GeoDataFrame:
g = load_layer(DATA / "schools.geojson")
g = g.rename(columns={
"loc_code": "loc_code",
"loc_name": "name",
"address": "address",
"bbl": "bbl",
"bin": "bin",
"boronum": "boro_num",
"geodistric": "geo_district",
"adimindist": "admin_district",
})
g["borough"] = g["boro_num"].astype(str).map(BORO)
g["bbl"] = g["bbl"].astype(str).str.replace(r"\.0$", "", regex=True)
keep = ["loc_code", "name", "address", "borough", "bbl", "bin",
"geo_district", "admin_district", "geometry"]
return g[keep].copy()