From 0f04aff390b2ab7bce11f3e03723b07d5cf7eece Mon Sep 17 00:00:00 2001
From: Daniel Kalioudjoglou
 <daniel.kalioudjoglou@developpement-durable.gouv.fr>
Date: Fri, 26 Apr 2024 14:05:13 +0200
Subject: [PATCH] ajout des nouveaux indicateurs siclop pour les maisons

---
 data-raw/chargement_siclop.R | 67 ++++++++++++++++++++++++++++++++----
 1 file changed, 61 insertions(+), 6 deletions(-)

diff --git a/data-raw/chargement_siclop.R b/data-raw/chargement_siclop.R
index c690e98..59946f5 100644
--- a/data-raw/chargement_siclop.R
+++ b/data-raw/chargement_siclop.R
@@ -86,27 +86,82 @@ data_prep <- function(typzon) {
                                                   nombre_annonces_appart_T4 = 0,
                                                   nombre_annonces_appart_T5 = 0,
                                                   `nombre_annonces_appart_T6 et +` = 0))
+  
+  # total pour maisons
+  data_prep_indic4 <- data_prep_indic0 %>%
+    filter(type_logement == "maison") %>%
+    group_by(codezone, annee_annonce) %>%
+    summarise(nombre_annonces_maison = length(id_annonce),
+              loy_hc_moyen_maison = round(mean(loyer_hc, na.rm = T), 2),
+              surf_habitable_moyenne_maison = round(mean(surf_habitable, na.rm = T), 2),
+              loy_hc_mediane_maison = round(median(loyer_hc, na.rm = T), 2)
+    ) %>%
+    ungroup() %>%
+    complete(codezone, annee_annonce, fill = list(nombre_annonces_appart = 0))
+  # maisons par nombre de pieces
+  data_prep_indic5 <- data_prep_indic0 %>%
+    filter(type_logement == "maison") %>%
+    group_by(codezone, annee_annonce, nombre_pieces) %>%
+    summarise(nombre_annonces_maison = length(id_annonce),
+              loy_hc_moyen_maison = round(mean(loyer_hc, na.rm = T), 2),
+              surf_habitable_moyenne_maison = round(mean(surf_habitable, na.rm = T), 2),
+              loy_hc_mediane_maison = round(median(loyer_hc, na.rm = T), 2)) %>%
+    pivot_wider(names_from = nombre_pieces,
+                values_from = c(nombre_annonces_maison, loy_hc_moyen_maison, surf_habitable_moyenne_maison, loy_hc_mediane_maison)) %>%
+    ungroup() %>%
+    complete(codezone, annee_annonce, fill = list(nombre_annonces_maison_T1 = 0,
+                                                  nombre_annonces_maison_T2 = 0,
+                                                  nombre_annonces_maison_T3 = 0,
+                                                  nombre_annonces_maison_T4 = 0,
+                                                  nombre_annonces_maison_T5 = 0,
+                                                  `nombre_annonces_maison_T6 et +` = 0)) 
+  
   # regroupement des données
   data_prep_indic <- data_prep_indic1 %>%
     left_join(data_prep_indic2, by = c("codezone", "annee_annonce")) %>%
     left_join(data_prep_indic3, by = c("codezone", "annee_annonce")) %>%
+    left_join(data_prep_indic4, by = c("codezone", "annee_annonce")) %>%
+    left_join(data_prep_indic5, by = c("codezone", "annee_annonce")) %>%
     mutate(date = make_date(annee_annonce, 12, 31)) %>%
     rename(CodeZone = codezone, nombre_annonces_appart_T6_et_plus = "nombre_annonces_appart_T6 et +",
            surf_habitable_moyenne_appart_T6_et_plus = "surf_habitable_moyenne_appart_T6 et +",
            loy_hc_moyen_appart_T6_et_plus = "loy_hc_moyen_appart_T6 et +",
-           loy_hc_mediane_appart_T6_et_plus = "loy_hc_mediane_appart_T6 et +") %>%
+           loy_hc_mediane_appart_T6_et_plus = "loy_hc_mediane_appart_T6 et +",
+           nombre_annonces_maison_T6_et_plus = "nombre_annonces_maison_T6 et +",
+           surf_habitable_moyenne_maison_T6_et_plus = "surf_habitable_moyenne_maison_T6 et +",
+           loy_hc_moyen_maison_T6_et_plus = "loy_hc_moyen_maison_T6 et +",
+           loy_hc_mediane_maison_T6_et_plus = "loy_hc_mediane_maison_T6 et +"
+    ) %>%
     # mutate (TypeZone = colnames(siclop_exploitation[{zonag}]) ) %>%
     mutate(TypeZone = zonag) %>%
-    select(TypeZone, CodeZone, date, nombre_annonces_ensemble, nombre_annonces_appart, nombre_annonces_appart_T1,
+    select(TypeZone, CodeZone, date, nombre_annonces_ensemble, nombre_annonces_appart, nombre_annonces_maison,
+           nombre_annonces_appart_T1,
            nombre_annonces_appart_T2, nombre_annonces_appart_T3, nombre_annonces_appart_T4,
-           nombre_annonces_appart_T5, nombre_annonces_appart_T6_et_plus, surf_habitable_moyenne_ensemble,
+           nombre_annonces_appart_T5, nombre_annonces_appart_T6_et_plus,
+           nombre_annonces_maison_T1,
+           nombre_annonces_maison_T2, nombre_annonces_maison_T3, nombre_annonces_maison_T4,
+           nombre_annonces_maison_T5, nombre_annonces_maison_T6_et_plus,
+           surf_habitable_moyenne_ensemble,
            surf_habitable_moyenne_appart, surf_habitable_moyenne_appart_T1, surf_habitable_moyenne_appart_T2,
            surf_habitable_moyenne_appart_T3, surf_habitable_moyenne_appart_T4, surf_habitable_moyenne_appart_T5,
-           surf_habitable_moyenne_appart_T6_et_plus, loy_hc_moyen_ensemble, loy_hc_moyen_appart, loy_hc_moyen_appart_T1,
+           surf_habitable_moyenne_appart_T6_et_plus,
+           surf_habitable_moyenne_maison, surf_habitable_moyenne_maison_T1, surf_habitable_moyenne_maison_T2,
+           surf_habitable_moyenne_maison_T3, surf_habitable_moyenne_maison_T4, surf_habitable_moyenne_maison_T5,
+           surf_habitable_moyenne_maison_T6_et_plus,           
+           loy_hc_moyen_ensemble,
+           loy_hc_moyen_appart, loy_hc_moyen_appart_T1,
            loy_hc_moyen_appart_T2, loy_hc_moyen_appart_T3, loy_hc_moyen_appart_T4, loy_hc_moyen_appart_T5,
-           loy_hc_moyen_appart_T6_et_plus, loy_hc_mediane_ensemble, loy_hc_mediane_appart, loy_hc_mediane_appart_T1,
+           loy_hc_moyen_appart_T6_et_plus,
+           loy_hc_moyen_maison, loy_hc_moyen_maison_T1,
+           loy_hc_moyen_maison_T2, loy_hc_moyen_maison_T3, loy_hc_moyen_maison_T4, loy_hc_moyen_maison_T5,
+           loy_hc_moyen_maison_T6_et_plus,           
+           loy_hc_mediane_ensemble,
+           loy_hc_mediane_appart, loy_hc_mediane_appart_T1,
            loy_hc_mediane_appart_T2, loy_hc_mediane_appart_T3, loy_hc_mediane_appart_T4, loy_hc_mediane_appart_T5,
-           loy_hc_mediane_appart_T6_et_plus
+           loy_hc_mediane_appart_T6_et_plus,
+           loy_hc_mediane_maison, loy_hc_mediane_maison_T1,
+           loy_hc_mediane_maison_T2, loy_hc_mediane_maison_T3, loy_hc_mediane_maison_T4, loy_hc_mediane_maison_T5,
+           loy_hc_mediane_maison_T6_et_plus
     )
   return(data_prep_indic)
 }
-- 
GitLab