Skip to content
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 13 additions & 12 deletions dbt_odis/models/bronze/_odis_bronze__models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3838,37 +3838,38 @@ models:
description: date d'extraction de la donnée
data_type: timestamp without time zone

- name: population_menages_2021
- name: population_menages_td_men1_2021
description: |-
Extraction du fichier CSV "MEN1" fourni par l'INSEE. Millésime 2021.
Taille ( = nb d'occupants) de chaque ménage par commune,
et par la catégorie socioprofessionnelle de la personne de référence.
columns:
- name: id
- name: index
description: index
data_type: integer
- name: nivgeo
- name: NIVGEO
description: |-
Niveau de granularité géographique.
Pour ce dateset, une seule valeur possible :
COM = Commune
data_type: text
- name: codgeo
- name: CODGEO
description: |-
Code d'identification géographique.
En l'occurrence, code postal de la commune
En l'occurrence, code commune
data_type: text
- name: bpe_measure
description: FACILITIES = services
- name: LIBGEO
description: Libellé de la commune
data_type: text
- name: nbperc
description: Taille du foyer (nombre de personnes)
- name: NPERC
description: |-
Taille du foyer (en nombre de personnes entre 1 et 6+)
data_type: integer
- name: cs2_24
- name: CS2_24
description: CSP générale de la personne de référence du ménage
data_type: text
- name: nb
description: TBD
- name: NB
description: Nombre de foyers dans la ville
data_type: float

- name: population_population_superficie
Expand Down
12 changes: 8 additions & 4 deletions dbt_odis/models/bronze/population_menages_2021.sql
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
{{ config(
tags = ['bronze', 'population'],
alias='vw_population_menages_2021'
alias='vw_population_nb_menages'
)
}}

select
{{ dbt_utils.star(from=source('bronze', 'population_menages_td_men1_2021')) }}
from {{ source('bronze', 'population_menages_td_men1_2021') }}
with population_nb_menages as
(
select {{ dbt_utils.star(from=source('bronze', 'population_menages_td_men1_2021')) }}
from {{ source('bronze', 'population_menages_td_men1_2021') }}
)

select * from population_nb_menages
20 changes: 20 additions & 0 deletions dbt_odis/models/gold/_odis_gold__models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -570,3 +570,23 @@ models:
- name: densite
description: densité de population, nombre d'habitants au kilomètre carré.
data_type: numeric


- name: gold_population_nb_menages
description: Table contenant le nombre de ménages et le nombre moyen d'occupants par ménage à tous les niveaux géographiques (commune, département, région). Union des tables silver_population_menages, silver_population_menages_departement et silver_population_menages_region.
columns:
- name: codgeo
description: Code géographique selon le niveau (Code INSEE commune, Code département, ou 'reg' + Code région)
data_type: text
- name: year
description: Année de référence des données du recensement
data_type: numeric
- name: nb_menages
description: Nombre total de ménages dans la zone géographique
data_type: numeric
- name: nb_occ_moyen
description: Nombre moyen d'occupants par ménage dans la zone géographique
data_type: numeric
- name: niveau_geo
description: Niveau géographique (COM pour commune, DEP pour département, REG pour région)
data_type: text
3 changes: 3 additions & 0 deletions dbt_odis/models/gold/_odis_gold__sources.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,7 @@ sources:
- name: vw_population_population_superficie_stg
description: Table contenant population et superficie par code géographique et année.
loaded_at_field: created_at

- name: silver_population_menages
description: donnees nombre de menages insee nettoyees

10 changes: 10 additions & 0 deletions dbt_odis/models/gold/gold_population_nb_menages.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{{ config(
tags = ['gold', 'population', 'nb_menages'],
)
}}

select * from {{ref('silver_population_menages')}}
union all
select * from {{ref('silver_population_menages_departement')}}
union all
select * from {{ref('silver_population_menages_region')}}
61 changes: 60 additions & 1 deletion dbt_odis/models/silver/_odis_silver__models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1177,4 +1177,63 @@ models:
description: Population en nombre d'habitants.
data_type: integer
- name: superficie
description: Superficie en hectares.
description: Superficie en hectares.



- name: silver_population_menages
description: Table nettoyée contenant le nombre de ménages et le nombre moyen d'occupants par ménage, agrégés par commune.
columns:
- name: codgeo
description: Code INSEE de la commune
data_type: text
- name: year
description: Année de référence des données du recensement
data_type: numeric
- name: nb_menages
description: Nombre total de ménages dans la commune
data_type: numeric
- name: nb_occ_moyen
description: Nombre moyen d'occupants par ménage dans la commune
data_type: numeric
- name: niveau_geo
description: Niveau géographique (COM pour commune)
data_type: text

- name: silver_population_menages_departement
description: Table agrégée contenant le nombre de ménages et le nombre moyen d'occupants par ménage au niveau département. Les données communales sont agrégées en utilisant le modèle de référence géographique com_dep_reg.
columns:
- name: codgeo
description: Code INSEE du département
data_type: text
- name: year
description: Année de référence des données du recensement
data_type: numeric
- name: nb_menages
description: Nombre total de ménages dans le département (somme des ménages des communes)
data_type: numeric
- name: nb_occ_moyen
description: Nombre moyen d'occupants par ménage dans le département (moyenne pondérée par le nombre de ménages)
data_type: numeric
- name: niveau_geo
description: Niveau géographique (DEP pour département)
data_type: text

- name: silver_population_menages_region
description: Table agrégée contenant le nombre de ménages et le nombre moyen d'occupants par ménage au niveau région. Les données communales sont agrégées en utilisant le modèle de référence géographique com_dep_reg.
columns:
- name: codgeo
description: Code INSEE de la région, préfixé par 'reg' (ex. 'reg84' pour Auvergne-Rhône-Alpes)
data_type: text
- name: year
description: Année de référence des données du recensement
data_type: numeric
- name: nb_menages
description: Nombre total de ménages dans la région (somme des ménages des communes)
data_type: numeric
- name: nb_occ_moyen
description: Nombre moyen d'occupants par ménage dans la région (moyenne pondérée par le nombre de ménages)
data_type: numeric
- name: niveau_geo
description: Niveau géographique (REG pour région)
data_type: text
3 changes: 3 additions & 0 deletions dbt_odis/models/silver/_odis_silver__sources.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ sources:
description: Vue contenant la population par tranche d'âge et genre.
loaded_at_field: created_at

- name: vw_population_nb_menages
description: View contenant

- name: vw_population_categorie_socio_pro
description: Vue contenant la population associée aux différentes catégories socio-professionnelles.
loaded_at_field: created_at
Expand Down
18 changes: 18 additions & 0 deletions dbt_odis/models/silver/silver_population_menages.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{{ config(
tags = ['silver', 'population'],
alias='silver_population_menages'
)
}}

with population_nb_menages as (
select
"CODGEO" as codgeo,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je rajouterais l'année du code geo ici par sécurité, vu qu'ils changent annuellement - en plus du code et du type.

2021 as year,
SUM("NB") as nb_menages,
SUM("NPERC" * "NB") / nullif(SUM("NB"),0) as nb_occ_Moyen,
'COM' as niveau_geo
from {{ ref('population_menages_2021') }} where "NIVGEO" = 'COM'
group by "CODGEO"
)

select * from population_nb_menages
20 changes: 20 additions & 0 deletions dbt_odis/models/silver/silver_population_menages_departement.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{{ config(
tags = ['silver', 'population'],
alias='silver_population_menages_departement'
)
}}

with population_nb_menages_dept as (
select
geo."CODDEP" as codgeo,
2021 as year,
SUM(pop."NB") as nb_menages,
SUM(pop."NPERC" * pop."NB") / nullif(SUM(pop."NB"),0) as nb_occ_Moyen,
'DEP' as niveau_geo
from {{ ref('population_menages_2021') }} pop
inner join {{ ref('com_dep_reg') }} geo on pop."CODGEO" = geo."CODGEO"
where pop."NIVGEO" = 'COM'
group by geo."CODDEP"
)

select * from population_nb_menages_dept
20 changes: 20 additions & 0 deletions dbt_odis/models/silver/silver_population_menages_region.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{{ config(
tags = ['silver', 'population'],
alias='silver_population_menages_region'
)
}}

with population_nb_menages_reg as (
select
'reg' || geo."CODREG" as codgeo,
2021 as year,
SUM(pop."NB") as nb_menages,
SUM(pop."NPERC" * pop."NB") / nullif(SUM(pop."NB"),0) as nb_occ_Moyen,
'REG' as niveau_geo
from {{ ref('population_menages_2021') }} pop
inner join {{ ref('com_dep_reg') }} geo on pop."CODGEO" = geo."CODGEO"
where pop."NIVGEO" = 'COM'
group by geo."CODREG"
)

select * from population_nb_menages_reg
2 changes: 1 addition & 1 deletion poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.