starling_sim.utils.demand
This module contains utils for generating and managing Starling demand.
Module Contents
Functions
|
Generate a Starling population from an Eqasim population. |
|
Default function for generating agent ids on a population. |
|
Add default Starling users attributes: agent type, icon, agent id and mode. |
Attributes
- starling_sim.utils.demand.STARLING_MINIMUM_COLUMNS = ['agent_type', 'icon', 'agent_id', 'mode', 'origin_time', 'geometry']
- starling_sim.utils.demand.demand_from_eqasim(eqasim_population: geopandas.GeoDataFrame, sample_rate: float = None, sample_seed=None, spatial_filter: geopandas.GeoDataFrame = None) geopandas.GeoDataFrame
Generate a Starling population from an Eqasim population.
- Parameters:
eqasim_population – GeoDataFrame describing an Eqasim population
sample_rate – fraction of the original population that is kept in the final population
sample_seed – seed used for sampling
spatial_filter – GeoDataFrame used as spatial filter
- Returns:
GeoDataFrame of a Starling population generated from the Eqasim population
- starling_sim.utils.demand.default_agent_ids(population: pandas.DataFrame) list
Default function for generating agent ids on a population.
- Parameters:
population – population DataFrame on which agent ids are generated
- Returns:
list of agent ids
- starling_sim.utils.demand.add_starling_demand_attributes(population: pandas.DataFrame, agent_id_generator: callable = default_agent_ids) pandas.DataFrame
Add default Starling users attributes: agent type, icon, agent id and mode.
Caution: this function modifies the original DataFrame.
- Parameters:
population – population DataFrame to enrich
agent_id_generator – function that takes the population as parameter and returns an “agent_id” column
- Returns:
enriched population DataFrame