gestion des données aberrantes venant de umap

This commit is contained in:
MaelReboux 2019-10-27 20:32:12 +01:00
parent b7e655087c
commit d96d03e6d7
2 changed files with 29 additions and 2 deletions

View file

@ -667,6 +667,18 @@ ALTER TABLE phase_5_pk_ref OWNER TO redadeg;
INSERT INTO phase_5_pk_ref SELECT * FROM phase_4_pk_auto_4326 ;
-- on définit manuellement la couche avec un type mixte parce qu'on a des lignes dans la couche de points…
DROP TABLE public.phase_5_pk_umap;
CREATE TABLE public.phase_5_pk_umap
(
ogc_fid integer,
pk_id integer,
secteur_id integer,
the_geom geometry,
--CONSTRAINT phase_5_pk_umap_pkey PRIMARY KEY (ogc_fid),
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 4326)
);
-- la table finale
DROP TABLE IF EXISTS phase_5_pk ;

View file

@ -35,14 +35,21 @@ echo ""
# on récupère les données umap et on les charge dans la même couche
# on commence donc par vider la couche cible
# géré avec l'option -overwrite sur le secteur 1
# géré avec l'option -overwrite sur le secteur 1 -> pb : on a des lignes dans la couche de points…
# on commence par vider la table qui contiendra les calculs d'itinéraires
echo " vidage de la couche de routage"
$PSQL -h $DB_HOST -U $DB_USER -d $DB_NAME -c "TRUNCATE TABLE phase_5_pk_umap ;"
echo " fait"
echo ""
echo " import des données umap"
echo ""
echo " secteur 1"
curl -sS http://umap.openstreetmap.fr/fr/datalayer/1027042/ > data/phase_5_pk_umap_tmp.geojson
# chargement initial
ogr2ogr -f "PostgreSQL" PG:"host=$DB_HOST user=$DB_USER password=$DB_PASS dbname=$DB_NAME" \
data/phase_5_pk_umap_tmp.geojson -nln phase_5_pk_umap -lco GEOMETRY_NAME=the_geom -explodecollections -overwrite
data/phase_5_pk_umap_tmp.geojson -nln phase_5_pk_umap -explodecollections -append
echo " secteur 2"
@ -109,6 +116,14 @@ data/phase_5_pk_umap_tmp.geojson -nln phase_5_pk_umap -explodecollections -appen
# ensuite on supprime les enregistrement aberrants
echo ""
echo " suppression des données nulles"
$PSQL -h $DB_HOST -U $DB_USER -d $DB_NAME -c "DELETE FROM phase_5_pk_umap WHERE ST_geometrytype(the_geom) <> 'ST_Point' OR secteur_id IS NULL OR pk_id IS NULL ;"
echo " fait"
echo ""
echo ""
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"