pearl.population

Module for population initialization in PEARL.

Functions

add_age_categories(population)

Add an age_cat column corresponding to the decade age of the agent, truncated at a maximum age category of 7.

add_default_columns(population)

Add default values for columns necessary for simulation to all agents that are in the population at the start of simulation.

add_default_columns_new(population)

Add default columns for new agents that are added to the population after the start of simulation.

add_id(population)

Add an id column to the population DataFrame.

add_multimorbidity(population)

Calculate the multimorbidity for each agent.

cast_type(population)

Cast population columns to save memory.

delta_bmi(population)

Calculate the change in BMI for each agent.

sort_alphabetically(population)

Sort columns alphabetically.

Classes

ApplyComorbidities(paramaters, user, new_init)

Apply all comorbidities sequentially

BasePopulation(parameters, population_size)

Base population object.

Bmi(parameters)

Calculate all BMI related variables.

Cd4Increase(parameters)

Calculate the increase in CD4 count for the population.

Comorbidity(parameters, comorbidity, user, ...)

Assign comorbidities for a random subset of the population based on each agents characteristics.

H1yy(parameters)

Assign diagnosis date (H1yy) to the population.

Ltfu(parameters, population_size)

Lost to follow up event.

NewAges(parameters)

Simulate ages for new initiators.

NewPopulation(parameters)

Population generator for new initiators.

NonUserPopInit(parameters, population_size)

Population generator for ART non-users.

PearlPopulation(parameters)

Base PEARL population generator

PostArtBMI(parameters)

Calculate Post-ART BMI for the population.

PreArtBMI(parameters)

Calculate pre-ART BMI for the population.

SimulateAges(parameters, population_size[, h1yy])

Simulate ages for the given popeulation size and conditions.

SqrtCd4nInit(parameters)

Assign initial sqrtCD4 counts to the population.

SqrtCd4nNew(parameters)

Assign sqrtCD4 counts to new agents.

Status(parameters, status)

Assign a status to the populaton.

UserPopInit(parameters, population_size)

Population generator for ART users.

YearsOutCare(parameters)

Calculate years out of care for delayed start agents.

pearl.population.add_id(population: pandas.DataFrame) pandas.DataFrame[source]

Add an id column to the population DataFrame.

Parameters:

population (pd.DataFrame) – Population Dataframe.

Returns:

Population DataFrame with id column added.

Return type:

pd.DataFrame

pearl.population.add_age_categories(population: pandas.DataFrame) pandas.DataFrame[source]

Add an age_cat column corresponding to the decade age of the agent, truncated at a maximum age category of 7.

Parameters:

population (pd.DataFrame) – Population with an age column.

Returns:

Population with age_cat column added.

Return type:

pd.DataFrame

pearl.population.add_default_columns(population: pandas.DataFrame) pandas.DataFrame[source]

Add default values for columns necessary for simulation to all agents that are in the population at the start of simulation.

Parameters:

population (pd.DataFrame) – Population DataFrame to add default columns to.

Returns:

Population with added default columns.

Return type:

pd.DataFrame

pearl.population.add_default_columns_new(population: pandas.DataFrame) pandas.DataFrame[source]

Add default columns for new agents that are added to the population after the start of simulation.

Parameters:

population (pd.DataFrame) – Population DataFrame to add default columns to.

Returns:

Population with added default columns.

Return type:

pd.DataFrame

pearl.population.delta_bmi(population: pandas.DataFrame) pandas.DataFrame[source]

Calculate the change in BMI for each agent.

Parameters:

population (pd.DataFrame) – Population Dataframe.

Returns:

Population DataFrame with delta_bmi column added.

Return type:

pd.DataFrame

pearl.population.add_multimorbidity(population: pandas.DataFrame) pandas.DataFrame[source]

Calculate the multimorbidity for each agent.

Parameters:

population (pd.DataFrame) – Population Dataframe.

Returns:

Population DataFrame with mm column added.

Return type:

pd.DataFrame

pearl.population.sort_alphabetically(population: pandas.DataFrame) pandas.DataFrame[source]

Sort columns alphabetically.

Parameters:

population (pd.DataFrame) – Population Dataframe.

Returns:

Population DataFrame with columns sorted alphabetically.

Return type:

pd.DataFrame

pearl.population.cast_type(population: pandas.DataFrame) pandas.DataFrame[source]

Cast population columns to save memory.

Parameters:

population (pd.DataFrame) – Population Dataframe.

Returns:

Type cast population Dataframe.

Return type:

pd.DataFrame

class pearl.population.Status(parameters: Parameters, status: int)[source]

Bases: Event

Assign a status to the populaton.

class pearl.population.SimulateAges(parameters: Parameters, population_size: int, h1yy: bool | None = None)[source]

Bases: Event

Simulate ages for the given popeulation size and conditions.

class pearl.population.H1yy(parameters: Parameters)[source]

Bases: Event

Assign diagnosis date (H1yy) to the population.

class pearl.population.SqrtCd4nInit(parameters: Parameters)[source]

Bases: Event

Assign initial sqrtCD4 counts to the population.

class pearl.population.SqrtCd4nNew(parameters: Parameters)[source]

Bases: Event

Assign sqrtCD4 counts to new agents.

class pearl.population.Cd4Increase(parameters: Parameters)[source]

Bases: Event

Calculate the increase in CD4 count for the population.

class pearl.population.PreArtBMI(parameters: Parameters)[source]

Bases: Event

Calculate pre-ART BMI for the population.

class pearl.population.PostArtBMI(parameters: Parameters)[source]

Bases: Event

Calculate Post-ART BMI for the population.

class pearl.population.BasePopulation(parameters: Parameters, population_size: int)[source]

Bases: Event

Base population object.

class pearl.population.Bmi(parameters: Parameters)[source]

Bases: Event

Calculate all BMI related variables.

class pearl.population.Comorbidity(parameters: Parameters, comorbidity: str, user: bool, new_init: bool)[source]

Bases: Event

Assign comorbidities for a random subset of the population based on each agents characteristics.

class pearl.population.ApplyComorbidities(paramaters: Parameters, user: bool, new_init: bool)[source]

Bases: Event

Apply all comorbidities sequentially

class pearl.population.Ltfu(parameters: Parameters, population_size: int)[source]

Bases: Event

Lost to follow up event.

class pearl.population.YearsOutCare(parameters: Parameters)[source]

Bases: Event

Calculate years out of care for delayed start agents.

class pearl.population.NewAges(parameters: Parameters)[source]

Bases: Event

Simulate ages for new initiators.

class pearl.population.UserPopInit(parameters: Parameters, population_size: int)[source]

Bases: Event

Population generator for ART users.

class pearl.population.NonUserPopInit(parameters: Parameters, population_size: int)[source]

Bases: Event

Population generator for ART non-users.

class pearl.population.NewPopulation(parameters: Parameters)[source]

Bases: Event

Population generator for new initiators.

class pearl.population.PearlPopulation(parameters: Parameters)[source]

Bases: Event

Base PEARL population generator