Documentation des fonctions de SimGen¶
Données¶
Les fonctions de données permettent de préparer les données pour la simulation.
-
simgen.
bdsps
(file, year=2017, iprint=False)¶ Nettoyage de la BDSPS.
Fonction qui permet de mettre en forme la BDSPS.
- Paramètres
year (int) – Année de la base de départ
iprint (boolean) – Switch pour imprimer ou non des outputs intermédiaires de cette fonction
-
simgen.
isq
(year)¶ Population par âge de l’ISQ
Fonction qui permet d’obtenir la population par âge de l’ISQ.
- Paramètres
year (int) – année pour la population
- Renvoie
Dataframe pandas contenant la population par âge (hommes et femmes)
- Type renvoyé
Dataframe
-
class
simgen.
parse
¶ Mise en forme des variables pour référence SimGen
Classe qui permet de prendre un dataframe provenant d’une base de donnée particulière et retourner un dataframe propre interpretable par SimGen. Les noms de variables peuvent être matché avec initialisation de la classe en utilisant les dictionnaires map_hh, map_sp et map_kd pour les trois registres.
-
dominants
(data)¶ Mise en forme des dominants
Fonction membre qui permet de prendre un dataframe dominant et d’appliquer les dictionnaires map_hh pour les noms de variables qui match avec SimGen.
- Paramètres
data (dataframe) – dataframe de dominants
- Renvoie
dataframe avec les noms de variables de SimGen
- Type renvoyé
dataframe
-
kids
(data)¶ Mise en forme des enfants
Fonction membre qui permet de prendre un dataframe enfants et d’appliquer les dictionnaires map_kd pour les noms de variables qui match avec SimGen.
- Paramètres
data (dataframe) – dataframe d’enfants
- Renvoie
dataframe avec les noms de variables de SimGen
- Type renvoyé
dataframe
-
spouses
(data)¶ Mise en forme des conjoints
Fonction membre qui permet de prendre un dataframe conjoint et d’appliquer les dictionnaires map_sp pour les noms de variables qui match avec SimGen.
- Paramètres
data (dataframe) – dataframe de conjoints
- Renvoie
dataframe avec les noms de variables de SimGen
- Type renvoyé
dataframe
-
-
class
simgen.
population
¶ Structure de population.
Cette classe permet d’abriter sous un seul toit les dominants, conjoints et enfants et de permettre certaines opérations.
-
input
(hh, sp, kd)¶ Fonction pour entrer les registres.
Fonction qui permet d’entrer les registres dominants, conjoints et enfants qui ont été préalablement passé dans parse().
- Paramètres
hh (dataframe) – Dataframe des dominants
sp (dataframe) – Dataframe des conjoints
kd (dataframe) – Dataframe des enfants
-
Transitions¶
-
class
simgen.
update
¶ Classe pour les transitions.
Classe permettant d’effectuer différentes transitions d’une année à l’autre.
-
birth
(pop, year, ntarget)¶ Fonction de transition naissance
- Paramètres
pop (population) – population (instance de la classe population)
year (int) – année de la transition
ntarget (int) – nombre de naissance visé (si alignement)
- Renvoie
instance de la classe population
- Type renvoyé
-
params_birth
()¶ Chargement des paramètres pour transition de naissances.
Le chargement est fait automatiquement avec création instance de la classe.
-
Simulation¶
La classe permetant de faire les simulations est model. Voici sa descriptions.
-
class
simgen.
model
(start_yr=2017, stop_yr=2100)¶ Modèle de simulation SimGen.
Cette classe permet de créer une instance d’un modèle de microsimulation.
- Paramètres
start_yr (int) – starting year of simulation
stop_yr (int) – last year of simulation
-
immig_assumptions
(allow=True, num=55000.0, init=None)¶ Hypothèses d’immigration.
Fonction membre qui permet de spécifier les hypothèses d’immigration.
- Paramètres
allow (boolean) – switch pour aligner le nombre d’immigrants sur ISQ
num (float) – total d’immigration (nombre). Par défaut, scénario de référence de l’ISQ.
init (str) – nom du fichier contenant la population d’immigrants
-
startpop
(file)¶ Charger une population de départ.
Fonction membre qui permet de charger une population de départ.
- Paramètres
file (str) – nom du fichier contenant la population de départ
Statistiques¶
La classe permet de faire des statistiques dans le cadre d’une simulation.
-
class
simgen.
statistics
(stratas)¶ Classe pour créer les statistiques provenant d’une simulation.
Cette classe permet de capturer la distribution de la population par strata durant une simulation. Elle permet ensuite de faire plusieurs tableaux dynamiques à partir de ces distributions.
- Paramètres
stratas (list of str) – liste des noms de variables du fichiers dominants afin de stratifier la population et collecter les fréquences (pondérées)
-
add
(pop, year)¶ Fonction pour ajouté une année à la distribution.
À chaque année d’une simulation, cette fonction est invoquée afin de collecter la distribution par strata dans l’année en cours. Cette population est ajoutée à counts.
- Paramètres
pop (population) – Population de départ (instance de la classe population)
year (int) – Année de départ de la simulation
-
freq
(strata=None, bins=[0], sub=None)¶ Fonction de fréquences.
Fonction qui permet, à l’aide de counts, de calculer les fréquences pondérés pour une strata donnée. Deux options sont disponibles: l’une, bins, permet de modifier les catégories de la strata (par exemple groupe d’âge), tandis que sub permet de définir un critère de sélection particulier pour le calcul des fréquence (en str).
- Paramètres
strata (str) – nom de la variable par laquelle on veut couper les données. Ne pas spécifier cette option revient à demander les fréquences totales.
bins (list of int) – list de valeurs pour couper les données selon la variable strata. Fonctionne seulement avec des variables de types int (pas str)
sub (str) – condition à respecter pour un sous-échantillon, e.g. “age>=18”.
- Renvoie
Un dataframe avec les fréquences par année (rangées) et valeur de la strata (colonnes).
- Type renvoyé
dataframe
-
prop
(strata, bins=[0], sub=None)¶ Fonction de proportion.
Fonction qui permet, à l’aide de counts, de calculer les proportions pondérés pour une strata donnée. Deux options sont disponibles: l’une, bins, permet de modifier les catégories de la strata (par exemple groupe d’âge), tandis que sub permet de définir un critère de sélection particulier pour le calcul des proportions (en str).
- Paramètres
strata (str) – nom de la variable par laquelle on veut couper les données.
bins (list of int) – list de valeurs pour couper les données selon la variable strata. Fonctionne seulement avec des variables de types int (pas str)
sub (str) – condition à respecter pour un sous-échantillon, e.g. “age>=18”.
- Renvoie
Un dataframe avec les proportions par année (rangées) et valeur de la strata (colonnes).
- Type renvoyé
dataframe
-
save
(file)¶ Fonction pour sauvegarder les fichiers de fréquences.
- Paramètres
file (str) – nom du fichier de sauvegarde, incluant l’extension pkl (format pickle)
-
start
(pop, year)¶ Initialisation de la distribution sur année de départ.
Le membre de la class qui contient les fréquences (counts) est populé pour l’année de départ.
- Paramètres
pop (population) – Population de départ (instance de la classe population)
year (int) – Année de départ de la simulation