Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
datacirco-prepare-data
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
leximpact
DataCirco
datacirco-prepare-data
Commits
20a2cc59
Commit
20a2cc59
authored
4 months ago
by
benoit-cty
Browse files
Options
Downloads
Patches
Plain Diff
p20_ -> p21_
parent
3d239532
No related branches found
No related tags found
1 merge request
!54
Mise à jour de DataCirco
Pipeline
#20092
failed
4 months ago
Stage: init
Stage: download
Stage: populate_db
Stage: export_json
Changes
1
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
datacirco/modules_data/logement_data.py
+40
-40
40 additions, 40 deletions
datacirco/modules_data/logement_data.py
with
40 additions
and
40 deletions
datacirco/modules_data/logement_data.py
+
40
−
40
View file @
20a2cc59
...
...
@@ -94,14 +94,14 @@ class GetLogement:
"""
select
st_asgeojson((st_dump(st_intersection(i.wkb_geometry,c.wkb_geometry))).geom)::json as geojson,
round(100*(p2
0
_log::numeric-p2
0
_maison::numeric)/p2
0
_log::numeric,1) as pct_logement_collectifs,
round(100 *
P20
_RP_PROP::numeric /
P20
_RP::numeric,1) as pct_proprietaires,
p2
0
_log::numeric as nb_logements,
p2
0
_maison as nb_logements_individuels,
p2
0
_RP::numeric as nb_residences_principales,
p2
0
_RP_prop::numeric as nb_rp_prop,
P20
_LOGVAC::numeric as nb_logements_vacants,
P20
_RSECOCC::numeric as nb_residences_secondaires_ou_occ
round(100*(p2
1
_log::numeric-p2
1
_maison::numeric)/p2
1
_log::numeric,1) as pct_logement_collectifs,
round(100 *
p21
_RP_PROP::numeric /
p21
_RP::numeric,1) as pct_proprietaires,
p2
1
_log::numeric as nb_logements,
p2
1
_maison as nb_logements_individuels,
p2
1
_RP::numeric as nb_residences_principales,
p2
1
_RP_prop::numeric as nb_rp_prop,
p21
_LOGVAC::numeric as nb_logements_vacants,
p21
_RSECOCC::numeric as nb_residences_secondaires_ou_occ
from zone_circo c
join iris_ge i on (st_intersects(c.wkb_geometry, i.wkb_geometry))
join insee_logement_2021 p on (p.iris=i.code_iris)
...
...
@@ -163,20 +163,20 @@ class GetLogement:
# à l'échelle de la circonscription :
utilitaires
.
db_exec
(
self
.
db
.
mogrify
(
f
"""
SELECT SUM(p2
0
_log::numeric*st_area(st_intersection(iris.wkb_geometry, circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RSECOCC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RPMAISON::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RPAPPART::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_PROP::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_LOC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_GRAT::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_LOGVAC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM((
P20
_RP_ACH19::numeric +
P20
_RP_ACH45::numeric +
P20
_RP_ACH70::numeric +
P20
_RP_ACH90::numeric)*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography))
f
"""
SELECT SUM(p2
1
_log::numeric*st_area(st_intersection(iris.wkb_geometry, circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RSECOCC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RPMAISON::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RPAPPART::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_PROP::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_LOC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_GRAT::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_LOGVAC::numeric*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM((
p21
_RP_ACH19::numeric +
p21
_RP_ACH45::numeric +
p21
_RP_ACH70::numeric +
p21
_RP_ACH90::numeric)*st_area(st_intersection(iris.wkb_geometry,circo.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography))
FROM insee_logement_2021 AS log
JOIN iris_ge AS iris ON iris.code_iris = log.iris
JOIN zone_circo AS circo ON st_intersects(iris.wkb_geometry, circo.wkb_geometry)
WHERE log.
P20
_RSECOCC IS NOT NULL AND circo.ref =
'
{
self
.
circo
}
'
;
"""
WHERE log.
p21
_RSECOCC IS NOT NULL AND circo.ref =
'
{
self
.
circo
}
'
;
"""
)
)
valeurs_circo
=
[
float
(
i
)
for
i
in
self
.
db
.
fetchone
()]
...
...
@@ -184,20 +184,20 @@ class GetLogement:
# à l'échelle du dépatrtement :
utilitaires
.
db_exec
(
self
.
db
.
mogrify
(
f
"""
SELECT SUM(p2
0
_log::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RSECOCC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RPMAISON::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RPAPPART::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_PROP::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_LOC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_RP_GRAT::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
P20
_LOGVAC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM((
P20
_RP_ACH19::numeric +
P20
_RP_ACH45::numeric +
P20
_RP_ACH70::numeric +
P20
_RP_ACH90::numeric)*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography))
f
"""
SELECT SUM(p2
1
_log::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RSECOCC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RPMAISON::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RPAPPART::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_PROP::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_LOC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_RP_GRAT::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM(
p21
_LOGVAC::numeric*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography)),
SUM((
p21
_RP_ACH19::numeric +
p21
_RP_ACH45::numeric +
p21
_RP_ACH70::numeric +
p21
_RP_ACH90::numeric)*st_area(st_intersection(iris.wkb_geometry, dep.wkb_geometry)::geography)/st_area(iris.wkb_geometry::geography))
FROM insee_logement_2021 AS log
JOIN iris_ge AS iris ON iris.code_iris = log.iris
JOIN ign_departement AS dep ON st_intersects(iris.wkb_geometry, dep.wkb_geometry)
WHERE log.
P20
_RSECOCC IS NOT NULL AND dep.insee_dep =
'
{
self
.
dept
}
'
;
"""
WHERE log.
p21
_RSECOCC IS NOT NULL AND dep.insee_dep =
'
{
self
.
dept
}
'
;
"""
)
)
valeurs_dept
=
[
float
(
i
)
for
i
in
self
.
db
.
fetchone
()]
...
...
@@ -205,16 +205,16 @@ class GetLogement:
# à l'échelle nationale
utilitaires
.
db_exec
(
self
.
db
.
mogrify
(
"""
SELECT SUM(p2
0
_log::numeric),
SUM(
P20
_RP::numeric),
SUM(
P20
_RSECOCC::numeric),
SUM(
P20
_RPMAISON::numeric),
SUM(
P20
_RPAPPART::numeric),
SUM(
P20
_RP_PROP::numeric),
SUM(
P20
_RP_LOC::numeric),
SUM(
P20
_RP_GRAT::numeric),
SUM(
P20
_LOGVAC::numeric),
SUM((
P20
_RP_ACH19::numeric +
P20
_RP_ACH45::numeric +
P20
_RP_ACH70::numeric +
P20
_RP_ACH90::numeric))
"""
SELECT SUM(p2
1
_log::numeric),
SUM(
p21
_RP::numeric),
SUM(
p21
_RSECOCC::numeric),
SUM(
p21
_RPMAISON::numeric),
SUM(
p21
_RPAPPART::numeric),
SUM(
p21
_RP_PROP::numeric),
SUM(
p21
_RP_LOC::numeric),
SUM(
p21
_RP_GRAT::numeric),
SUM(
p21
_LOGVAC::numeric),
SUM((
p21
_RP_ACH19::numeric +
p21
_RP_ACH45::numeric +
p21
_RP_ACH70::numeric +
p21
_RP_ACH90::numeric))
FROM insee_logement_2021 AS log
JOIN iris_ge AS iris ON iris.code_iris = log.iris
JOIN ign_departement AS dep ON st_intersects(iris.wkb_geometry, dep.wkb_geometry);
"""
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment