@@ -192,23 +192,39 @@ DataClean$ses_male_bin <- ifelse(clean$ses_gender == "Male", 1, 0)
192192DataClean $ ses_male_bin [clean $ ses_gender == " Other" ] <- NA
193193table(DataClean $ ses_male_bin )
194194
195+
195196# In which year you were born?-------------------------------------------------------------
196- attributes(clean $ ses_year_born. )
197- table(clean $ ses_year_born. )
197+ table(clean $ ses_year_born. , useNA = " ifany" )
198198
199- # Calcul de l'âge basé sur l'année de naissance
200- DataClean $ ses_age <- 2025 - as.numeric(clean $ ses_year_born. )
199+ # 2) Calculer l'âge
200+ DataClean $ ses_age <- NA
201+ DataClean $ ses_age <- 2025 - as.numeric(clean $ ses_year_born )
201202
202- # Création des catégories d'âge
203- DataClean $ age34 <- ifelse(DataClean $ ses_age > = 18 & DataClean $ ses_age < = 34 , 1 , 0 )
204- DataClean $ age35_54 <- ifelse(DataClean $ ses_age > = 35 & DataClean $ ses_age < = 54 , 1 , 0 )
205- # (55 plus becomes reference)
203+ # 3) Vérifier l'âge
204+ table(DataClean $ ses_age , useNA = " ifany" )
206205
206+ # 4) Binaires
207207
208+ # 18-34
209+ DataClean $ age18_34_bin <- NA
210+ DataClean $ age18_34_bin [DataClean $ ses_age > = 18 & DataClean $ ses_age < = 34 ] <- 1
211+ DataClean $ age18_34_bin [! (DataClean $ ses_age > = 18 & DataClean $ ses_age < = 34 ) &
212+ ! is.na(DataClean $ ses_age )] <- 0
213+ table(DataClean $ age18_34_bin , useNA = " always" )
214+
215+ # 35-54
216+ DataClean $ age35_54_bin <- NA
217+ DataClean $ age35_54_bin [DataClean $ ses_age > = 35 & DataClean $ ses_age < = 54 ] <- 1
218+ DataClean $ age35_54_bin [! (DataClean $ ses_age > = 35 & DataClean $ ses_age < = 54 ) &
219+ ! is.na(DataClean $ ses_age )] <- 0
220+ table(DataClean $ age35_54_bin , useNA = " always" )
221+
222+ # 55+
223+ DataClean $ age55plus_bin <- NA
224+ DataClean $ age55plus_bin [DataClean $ ses_age > = 55 ] <- 1
225+ DataClean $ age55plus_bin [! (DataClean $ ses_age > = 55 ) & ! is.na(DataClean $ ses_age )] <- 0
226+ table(DataClean $ age55plus_bin , useNA = " always" )
208227
209- # Vérification
210- table(DataClean $ ses_age )
211- table(DataClean $ age35_54 )
212228
213229# ! Check in the new survey, provinces include : AB, ON, QC, NB, NL, NS, PEI
214230# (to become a categorical variable (AB, ON, QC, EC & a bin for each, e.g. reg_ab [0,1]))
@@ -259,16 +275,22 @@ table(clean$ses_region_cat, useNA="ifany")
259275
260276DataClean $ ses_region_cat <- clean $ ses_region_cat
261277
278+ # ##binaire East Coast
279+
280+ DataClean $ region_eastcoast_bin <- NA
281+ DataClean $ region_eastcoast_bin [DataClean $ ses_region_cat == " East Coast" ] <- 1
282+ DataClean $ region_eastcoast_bin [DataClean $ ses_region_cat != " East Coast" &
283+ ! is.na(DataClean $ ses_region_cat )] <- 0
284+ table(DataClean $ region_eastcoast_bin , useNA = " always" )
285+
262286
263287# What language do you speak most often at home?-------------------------------------------------------------------------
264- attributes(clean $ ses_language )
265288table(clean $ ses_language )
266289DataClean $ ses_french_bin <- ifelse(clean $ ses_language == " French" , 1 , 0 )
267290DataClean $ ses_french_bin [clean $ ses_language == " Other" ] <- NA
268291table(DataClean $ ses_french_bin )
269292
270293# What is the highest level of education that you have completed?--------------------------------------------------------
271- attributes(clean $ ses_education )
272294table(clean $ ses_education )
273295
274296# Initialisation
@@ -665,7 +687,7 @@ table(DataClean$ideo_define_num)
665687
666688# binaire province
667689
668- # 1)
690+
669691table(clean $ ideo_define_clean , useNA = " ifany" )
670692
671693# 2) QUEBEC
@@ -719,7 +741,7 @@ table(DataClean$ideo_define_PE_first_bin, useNA = "always")
719741
720742# binaire canada
721743
722- # 1) Vérifier les modalités
744+
723745table(clean $ ideo_define_clean , useNA = " ifany" )
724746
725747# 2) ALBERTA — First Canadian, second Albertan
@@ -1109,10 +1131,6 @@ table(DataClean$budget_imp_debt_bin, useNA = "always")
11091131# -----------------------------------------------------------------------------------------
11101132# #budget prio
11111133
1112- # ============================================================
1113- # ÉTAPE 1: RENOMMER ET CRÉER LES VARIABLES BINAIRES
1114- # ============================================================
1115-
11161134# 1. Renommer les variables
11171135DataClean <- clean %> %
11181136 rename(
@@ -1134,7 +1152,7 @@ DataClean <- DataClean %>%
11341152 n_at_max = sum(c(budget_prio_health , budget_prio_seniors , budget_prio_cc ,
11351153 budget_prio_ecn , budget_prio_clim ) == max_budget , na.rm = TRUE ),
11361154
1137- # Binaire = 1 seulement si c'est le SEUL maximum
1155+ # Binaire = 1 seulement si c'est le seul maximum
11381156 budget_prio_health_bin = as.integer(budget_prio_health == max_budget & n_at_max == 1 ),
11391157 budget_prio_seniors_bin = as.integer(budget_prio_seniors == max_budget & n_at_max == 1 ),
11401158 budget_prio_cc_bin = as.integer(budget_prio_cc == max_budget & n_at_max == 1 ),
@@ -1145,9 +1163,7 @@ DataClean <- DataClean %>%
11451163 # Nettoyer les colonnes d'aide
11461164 select(- max_budget , - n_at_max )
11471165
1148- # ============================================================
1149- # ÉTAPE 2: VÉRIFICATION
1150- # ============================================================
1166+ # Vérification
11511167
11521168cat(" === VÉRIFICATION DES VARIABLES BINAIRES ===\n\n " )
11531169
@@ -1161,7 +1177,7 @@ for (var in bin_vars) {
11611177 cat(" \n " )
11621178}
11631179
1164- # Résumé global
1180+ # Résumé
11651181cat(" === RÉSUMÉ GLOBAL ===\n " )
11661182summary_bin <- DataClean %> %
11671183 select(all_of(bin_vars )) %> %
@@ -1218,9 +1234,7 @@ create_policy_vars <- function(df, policy_cols) {
12181234 return (df )
12191235}
12201236
1221- # ============================================================
1222- # NETTOYAGE DES DONNÉES
1223- # ============================================================
1237+ # nettoyage
12241238
12251239DataClean <- clean %> %
12261240 rename(
@@ -1317,11 +1331,8 @@ DataClean <- DataClean %>%
13171331 tradeoff_cc2_educ_low_inc_strong = as.integer(tradeoff_cc2_educ_low_inc_intensity > = 50 )
13181332 )
13191333
1320- # ============================================================
1321- # VÉRIFICATION
1322- # ============================================================
1334+ # vérification
13231335
1324- cat(" ✅ Nettoyage terminé!\n\n " )
13251336
13261337cat(" === VÉRIFICATION DES PRÉFÉRENCES FORTES (>= 50 points) ===\n\n " )
13271338
@@ -1362,13 +1373,9 @@ cat("\n========================================\n")
13621373cat(" VÉRIFICATIONS DES 3 TYPES DE VARIABLES\n " )
13631374cat(" ========================================\n\n " )
13641375
1365- # ============================================================
13661376# QUESTION CC1
1367- # ============================================================
13681377
1369- cat(" =====================================\n " )
1370- cat(" QUESTION CC1 (Childcare 1)\n " )
1371- cat(" =====================================\n\n " )
1378+ # #binaires, intensité et préférence forte
13721379
13731380cat(" --- BINAIRES (_bin) - Priorité #1 claire ---\n " )
13741381cat(" tradeoff_cc1_tax_bin:\n " )
@@ -1391,12 +1398,8 @@ cat("Debt strong:", sum(DataClean$tradeoff_cc1_debt_strong, na.rm = TRUE), "pers
13911398cat(" No spend strong:" , sum(DataClean $ tradeoff_cc1_no_spend_strong , na.rm = TRUE ), " personnes\n " )
13921399
13931400# ============================================================
1394- # QUESTION GE
1395- # ============================================================
1401+ # QUESTION GE (Green economy)
13961402
1397- cat(" \n =====================================\n " )
1398- cat(" QUESTION GE (Green Economy)\n " )
1399- cat(" =====================================\n\n " )
14001403
14011404cat(" --- BINAIRES (_bin) ---\n " )
14021405cat(" tradeoff_ge_tax_bin:\n " )
@@ -1420,11 +1423,7 @@ cat("No spend strong:", sum(DataClean$tradeoff_ge_no_spend_strong, na.rm = TRUE)
14201423
14211424# ============================================================
14221425# QUESTION TAX
1423- # ============================================================
14241426
1425- cat(" \n =====================================\n " )
1426- cat(" QUESTION TAX\n " )
1427- cat(" =====================================\n\n " )
14281427
14291428cat(" --- BINAIRES (_bin) ---\n " )
14301429cat(" tradeoff_tax_less_services_bin:\n " )
@@ -1448,11 +1447,6 @@ cat("Wealth tax strong:", sum(DataClean$tradeoff_tax_wealth_tax_strong, na.rm =
14481447
14491448# ============================================================
14501449# QUESTION HC
1451- # ============================================================
1452-
1453- cat(" \n =====================================\n " )
1454- cat(" QUESTION HC (Healthcare)\n " )
1455- cat(" =====================================\n\n " )
14561450
14571451cat(" --- BINAIRES (_bin) ---\n " )
14581452cat(" tradeoff_hc_all_bin:\n " )
@@ -1473,11 +1467,7 @@ cat("Pensions strong:", sum(DataClean$tradeoff_hc_pensions_strong, na.rm = TRUE)
14731467
14741468# ============================================================
14751469# QUESTION CC2
1476- # ============================================================
14771470
1478- cat(" \n =====================================\n " )
1479- cat(" QUESTION CC2 (Childcare 2)\n " )
1480- cat(" =====================================\n\n " )
14811471
14821472cat(" --- BINAIRES (_bin) ---\n " )
14831473cat(" tradeoff_cc2_all_bin:\n " )
@@ -1501,11 +1491,7 @@ cat("Educ low inc strong:", sum(DataClean$tradeoff_cc2_educ_low_inc_strong, na.r
15011491
15021492# ============================================================
15031493# RÉSUMÉ GLOBAL
1504- # ============================================================
15051494
1506- cat(" \n\n ========================================\n " )
1507- cat(" RÉSUMÉ GLOBAL\n " )
1508- cat(" ========================================\n\n " )
15091495
15101496cat(" Total de variables créées par question:\n " )
15111497cat(" - CC1: " , length(grep(" ^tradeoff_cc1_.*_(bin|intensity|strong)$" , names(DataClean ))), " variables\n " )
@@ -1514,7 +1500,6 @@ cat("- TAX: ", length(grep("^tradeoff_tax_.*_(bin|intensity|strong)$", names(Dat
15141500cat(" - HC: " , length(grep(" ^tradeoff_hc_.*_(bin|intensity|strong)$" , names(DataClean ))), " variables\n " )
15151501cat(" - CC2: " , length(grep(" ^tradeoff_cc2_.*_(bin|intensity|strong)$" , names(DataClean ))), " variables\n " )
15161502
1517- cat(" \n ✅ VÉRIFICATIONS TERMINÉES!\n " )
15181503
15191504# #To what extent do you agree with the following statement: The government should increase spending on childcare.
15201505# table(clean$tradeoff_invest_cc0)
@@ -1733,11 +1718,10 @@ cat("\n✅ VÉRIFICATIONS TERMINÉES!\n")
17331718# DataClean$tradeoff_senior_income_bin <- ifelse(
17341719# DataClean$tradeoff_senior_income_num %in% c(0.66, 1), 1, 0
17351720# )
1736- # ---------------------------------------------------------------------------
1737- # #redis
1738- # ============================================================
1739- # NETTOYAGE DES VARIABLES DE REDISTRIBUTION
1721+
17401722# ============================================================
1723+ # REDISTRIBUTION
1724+
17411725
17421726# redis_fei_can1: most = 1, never = 0
17431727table(clean $ redis_fei_can1 )
@@ -1851,7 +1835,6 @@ DataClean$redis_no_cheat_system_bin <- ifelse(
18511835 DataClean $ redis_no_cheat_system_num %in% c(0.66 , 1 ), 1 , 0
18521836)
18531837
1854- cat(" ✅ Variables de redistribution nettoyées!\n " )
18551838
18561839# ------------------------------------------------------------------------------------
18571840# ideo_vote_fed_clean
0 commit comments