API Reference

epymorph.rume

Specify runnable modeling experiments.

RUME A RUME (or Runnable Modeling Experiment) contains the configuration of an epymorph-style simulation.
RUME.params_description Provide a description of all attributes required by the RUME.
RUME.estimate_data Prints a report estimating the data requirements of this RUME.
RUME.requirements_tree Compute the requirements tree for the given RUME.
RUME.generate_params_dict Generate a skeleton dictionary you can use to provide parameter values to the RUME.
RUME.evaluate_params Evaluates the parameters of this RUME.
RUME.initialize Evaluates the Initializer(s) for this RUME.
RUME.symbols Convenient function to retrieve the symbols used to represent simulation quantities.
SingleStrataRUME A RUME with a single strata.
SingleStrataRUME.build Create a RUME with a single strata.
MultiStrataRUME A RUME with multiple strata.
MultiStrataRUME.build Create a multistrata RUME by combining one GPM per strata. Using this function directly is not the recommended workflow for creating a multistrata RUME; see MultiStrataRUMEBuilder.
MultiStrataRUMEBuilder Declare a multi-strata RUME by combining GPMs, one for each strata.
MultiStrataRUMEBuilder.meta_edges When implementing a MultiStrataRumeBuilder, override this method to build the meta-transition-edges – the edges which represent cross-strata interactions. You are given a reference to this model’s symbols library so you can build expressions for the transition rates.
MultiStrataRUMEBuilder.build Complete the RUME definition and construct an instance.
GPM A GPM (short for Geo-Population Model) combines an IPM, MM, and initialization scheme. Most often, a GPM is used to define one strata in a multi-strata RUME.
GEO_LABELS A special attribute which, if provided to a RUME (“meta::geo::label”), will be used as labels for the geo node. Otherwise labels will be taken from the geo scope.

epymorph.simulation

Building blocks for epymorph simulations.

default_rng Convenience constructor to create a factory function for a simulation’s random number generator.
Tick A Tick represents a single time-step in a simulation. This object bundles the related information for a single tick. For instance, each time step corresponds to a calendar day, a numeric day (i.e., relative to the start of the simulation), which tau step this corresponds to, and so on.
TickIndex An index identifying tau steps within a day. For example, if a RUME’s movement model declares three tau steps, the first six tick indices will be 0, 1, 2, 0, 1, 2. Indices 3 or more would be invalid for this RUME.
TickDelta An offset relative to a Tick expressed as a number of days which should elapse, and the step on which to end up. In applying this delta, it does not matter which step we start on.
NEVER A special TickDelta which expresses an event that should never happen. Any Tick plus Never returns Never.
resolve_tick_delta Add a delta to a tick to get the index of the resulting tick.
simulation_clock Generates the sequence of ticks which makes up the simulation clock.
ParamValue A type alias which describes all acceptable input forms for parameter values:
BaseSimulationFunction A function which runs in the context of a simulation to produce a value (as a numpy array). This base class exists to share functionality without limiting the function signature of evaluate().
SimulationFunction A function which runs in the context of a RUME to produce a value (as a numpy array). The value must be independent of the simulation state, and they will often be evaluated before the simulation starts.
SimulationFunction.validate Override this method to validate the function evaluation result. Implementations should raise an appropriate error if results are not valid.
SimulationFunction.with_context Constructs a clone of this instance which has access to the given context.
SimulationFunction.data Retrieve the value of a requirement. You must declare the attribute in this function’s requirements list.
SimulationFunction.evaluate Implement this method to provide logic for the function. Use self methods and properties to access the simulation context or defer processing to another function.
SimulationFunction.defer Defer processing to another instance of a SimulationFunction, returning the result of evaluation.
SimulationTickFunction A function which runs in the context of a RUME to produce a value (as a numpy array) which is expected to vary over the run of a simulation.
SimulationTickFunction.validate Override this method to validate the function evaluation result. Implementations should raise an appropriate error if results are not valid.
SimulationTickFunction.with_context Constructs a clone of this instance which has access to the given context.
SimulationTickFunction.data Retrieve the value of a requirement. You must declare the attribute in this function’s requirements list.
SimulationTickFunction.evaluate Implement this method to provide logic for the function. Use self methods and properties to access the simulation context or defer processing to another function.
SimulationTickFunction.defer Defer processing to another instance of a SimulationTickFunction, returning the result of evaluation.

epymorph.simulator.basic

Run forward simulations.

basic_simulator.BasicSimulator A simulator for running singular simulation passes and producing time-series output. The most basic simulator.
basic_simulator.BasicSimulator.run Run a forward simulation on the RUME and produce one realization (output).
output.Output The output of a simulation run, including compartment data for all locations and all IPM compartments and event data for all locations and all IPM events.

epymorph.compartment_model

Specify disease models.

CompartmentModel A compartment model definition and its corresponding metadata. Effectively, a collection of compartments, transitions between compartments, and the data parameters which are required to compute the transitions.
CompartmentModel.diagram Render a diagram of this IPM, either by showing it with matplotlib (default) or by saving it to file as a png image.
CompartmentModel.edges When implementing a CompartmentModel, override this method to define the transition edges between compartments.
ModelSymbols IPM symbols needed in defining the model’s transition rate expressions.
ModelSymbols.compartments Select compartment symbols by name.
ModelSymbols.requirements Select requirement symbols by name.
CompartmentDef Defines an IPM compartment.
CompartmentDef.with_strata Return a copy of this compartment with the strata changed.
CompartmentName The name of a compartment, which may have subscript and strata parts.
CompartmentName.parse Parses a string as a CompartmentName. If the name contains no underscores, the entire name is the base name. If the name contains at least one underscore, the part before the first underscore is the base name and everything after is the subscript part. It is not possible to create a stratified name this way.
CompartmentName.with_subscript Return a copy of this name with the subscript changed.
CompartmentName.with_strata Return a copy of this name with the strata changed.
compartment Define an IPM compartment. Convenience constructor for CompartmentDef.
EdgeDef Defines a single edge transitions in a compartment model.
EdgeName The name of a transition edge, from one compartment to another.
EdgeName.with_subscript Return a copy of this edge with the subscript changed.
EdgeName.with_strata Return a copy of this edge with the strata changed.
edge Define a transition edge from one compartment to another at the given rate.
ForkDef Defines a fork-style transition in a compartment model.
fork Define a forked transition: a set of edges that come from the same compartment but go to different compartments. It is assumed the edges will share a “base rate”– a common sub-expression among all edge rates – and that each edge in the fork is given a proportion on that base rate.
TransitionDef All ways to define a compartment model transition: edges or forks.
BIRTH An IPM psuedo-compartment representing exogenous input of individuals. This is useful in defining IPM edges.
DEATH An IPM psuedo-compartment representing exogenous removal of individuals. This is useful in defining IPM edges.
CombinedCompartmentModel A CompartmentModel constructed by combining others for use in multi-strata models. Typically you will not have to create a CombinedCompartmentModel directly. Building a MultiStrataRUME will combine the models for you.
CombinedCompartmentModel.diagram Render a diagram of this IPM, either by showing it with matplotlib (default) or by saving it to file as a png image.
MultiStrataModelSymbols IPM symbols needed in defining the model’s transition rate expressions.
MultiStrataModelSymbols.strata_compartments Select compartment symbols by name in a particular strata. If names is non-empty, select those symbols by their original name. If names is empty, return all symbols.
MultiStrataModelSymbols.strata_requirements Select requirement symbols by name in a particular strata. If names is non-empty, select those symbols by their original name. If names is empty, return all symbols.
MetaEdgeBuilder The type of a function for creating meta edges in a multistrata RUME.
BaseCompartmentModel Shared base-class for compartment models.
BaseCompartmentModel.diagram Render a diagram of this IPM, either by showing it with matplotlib (default) or by saving it to file as a png image.
QuantitySelector A utility class for selecting a subset of IPM quantities. Most of the time you obtain one of these using CompartmentModel’s select property.
QuantitySelector.all Select all compartments and events.
QuantitySelector.indices Select quantities by index (determined by IPM definition order: all IPM compartments, all IPM events, and then meta edge events if any).
QuantitySelector.by Select compartments and events by providing pattern strings for each.
QuantitySelector.compartments Select compartments with zero or more pattern strings.
QuantitySelector.events Select events with zero or more pattern strings.
QuantityStrategy A strategy for dealing with the quantity axis, e.g., in processing results. Quantities here are an IPM’s compartments and events. Strategies can include selection of a subset, grouping, and aggregation.
QuantitySelection A kind of QuantityStrategy describing a sub-selection of IPM quantities (its events and compartments). A selection performs no grouping or aggregation.
QuantitySelection.group Groups quantities according to the given options.
QuantityGroup A kind of QuantityStrategy describing a group operation on IPM quantities, with an optional sub-selection.
QuantityGroup.agg Combine grouped quantities using the named aggregation.
QuantityGroup.sum Combine grouped quantities by adding their values.
QuantityAggregation A kind of QuantityStrategy describing a group-and-aggregate operation on IPM quantities, with an optional sub-selection.
Quantity The type of a quantity referenced by a QuantityStrategy.
QuantityGrouping Describes how to group simulation output quantities (events and compartments). The default combines any quantity whose names match exactly. This is common in multistrata models where events from several strata impact one transition. You can also choose to group across strata and subscript differences. Setting strata or subscript to True means those elements of quantity names (if they exist) are ignored for the purposes of matching.
QuantityAggMethod The supported methods for aggregating IPM quantities.

epymorph.movement_model

Specify movement models.

MovementModel A MovementModel (MM) describes a pattern of geospatial movement for individuals in the model. The MM chops the day up into one or more parts (tau steps), and then describes movement clauses which trigger for certain parts of the day.
MovementClause A movement clause is basically a function which calculates how many individuals should move between all of the geo nodes, and then epymorph decides by random draw which individuals move (as identified by their disease status, or IPM compartment). It also has various settings which determine when the clause is active (for example, only move people Monday-Friday at the start of the day) and when the individuals that were moved by the clause should return home (for example, stay for two days and then return at the end of the day).
MovementClause.evaluate Implement this method to provide logic for the clause. Your implementation is free to use data, dim, and rng. You can also use defer to utilize another MovementClause instance.
MovementClause.is_active Should this movement clause be applied this tick?

epymorph.tools

Process and visualize simulation results.

out_plot.PlotRenderer Provides methods for rendering an output in plot form.
out_plot.PlotRenderer.line Renders a line plot using matplotlib showing the given selections.
out_plot.PlotRenderer.line_plt Draws lines onto the given matplotlib Axes to show the given selections. This is a variant of the method line() that gives you more control over the rendering of a plot by letting you do most of the work with matplotlib’s API.
out_map.MapRenderer Provides methods for rendering an output in choropleth map form.
out_map.MapRenderer.choropleth Renders a choropleth map using GeoPandas and matplotlib showing the given selections.
out_map.MapRenderer.choropleth_plt Draws a choropleth map onto the given matplotlib Axes showing the given selections. This is a variant of the method choropleth() that gives you more control over the rendering of a plot by letting you do most of the work with matplotlib’s API. See that method for conditions that must be met to use this method effectively.
out_map.MapRenderer.geography Calculate the GeoDataFrame for the given geo axis strategy, without merging any simulation data.
out_map.MapRenderer.geography_data Calculate the GeoDataFrame used for drawing maps merged with the output data from the given axis strategies.
out_map.NodeLabelRenderer A class for rendering text labels on choropleth maps. The default implementation is very simple, but you may override this class to customize.
out_map.NodeLabelRenderer.coords Determine where to draw the labels.
out_map.NodeLabelRenderer.labels Determine the text of each label.
out_map.NodeLabelRenderer.colors Determine the color of each label.
out_map.NodeLabelRenderer.additional_kwargs Determine extra keyword arguments to pass to the annotate() method for each label.
out_map.NodeLabelRenderer.render Render labels onto the given matplotlib.axes.Axes.
out_table.TableRenderer Provides a number of methods for rendering an output in tabular form.
out_table.TableRenderer.quantiles Renders a table showing time-series quantiles for the given selections.
out_table.TableRenderer.range Renders a table showing minimum and maximum values over time for the given selections. This is equivalent to calling quantiles() with 0 and 1.
out_table.TableRenderer.sum Renders a table showing summed values over time for the given selections.
out_table.TableRenderer.chart Renders a table showing a rough time series bar chart for the given selections using ASCII characters.

epymorph.time

Deal with time in epymorph.

TimeFrame Describes a time frame as a contiguous set of calendar dates, primarily used to define the time frame of a simulation.
TimeFrame.of Alternate constructor: start date and a given duration in days.
TimeFrame.range Alternate constructor: start and end date (inclusive).
TimeFrame.rangex Alternate constructor: start and end date (exclusive).
TimeFrame.year Alternate constructor: an entire calendar year.
TimeFrame.is_subset Is the given TimeFrame a subset of this one?
TimeFrame.to_numpy Returns a numpy array of the dates in this time frame.
DateRange Like range but for dates, with an optional fixed interval between dates.
DateRange.between Compute a new DateRange that represents the subset of dates in this range that are also between min_date and max_date (inclusive).
DateRange.overlap Compute a new DateRange that represents the subset of dates in this range that are also in the given TimeFrame.
DateRange.overlap_or_raise Compute a new DateRange that represents the subset of dates in this range that are also in the given TimeFrame. If there is no overlap, raise an error.
DateRange.to_pandas Convert the DateRange to a Pandas datetime index.
DateRange.to_numpy Convert the DateRange to a numpy datetime64 array.
DateRange.until_date Alternative constructor for DateRange when you aren’t sure of the precise end date: that is, you know roughly when the range ends but aren’t sure if that date is an exact number of steps after start date.
iso8601 Adapt ISO 8601 strings to dates; leave dates as they are.
TimeGrouping Defines a time-axis grouping scheme. This is essentially a function that maps the simulation time axis info (ticks and dates) into a new series which describes the group membership of each time axis row.
TimeGrouping.map Produce a column that describes the group membership of each “row”, where each entry of ticks and dates describes a row of the time series. This column will be used as the basis of a groupby operation.
ByTick An instance of TimeGrouping. Group by simulation tick. (Effectively the same as no grouping.)
ByDate An instance of TimeGrouping. Group by date.
ByWeek An instance of TimeGrouping. Group by week, using the given start of the week.
ByMonth An instance of TimeGrouping. Group by month, using the first day of the month.
EveryNDays An instance of TimeGrouping. Group every ‘n’ days from the start of the time range.
NBins An instance of TimeGrouping. Group the time series into a number of bins where bin boundaries must align with simulation days.
ByEpiWeek An instance of TimeGrouping. Group the time series by epi week.
Dim Describes data dimensions for a time-grouping operation; i.e., after subselections and geo-grouping.
TimeSelector A utility class for selecting a subset of a time frame. Most of the time you obtain one of these using TimeFrame’s select property.
TimeSelector.all Select the entirety of the time frame.
TimeSelector.days Subset the time frame by providing a start and end simulation day (inclusive).
TimeSelector.range Subset the time frame by providing the start and end date (inclusive).
TimeSelector.rangex Subset the time frame by providing the start and end date (exclusive).
TimeSelector.year Subset the time frame to a specific year.
TimeStrategy A strategy for dealing with the time axis, e.g., in processing results. Strategies can include selection of a subset, grouping, and aggregation.
TimeStrategy.to_time_frame Creates a TimeFrame that has the same bounds as this TimeStrategy. NOTE: this does not mean the TimeFrame contains the same number of entries (group keys) as the result of applying this strategy – groups can skip days whereas TimeFrames are contiguous.
TimeStrategy.selection_ticks Converts this into a slice for which ticks are selected (by index).
TimeSelection A kind of TimeStrategy describing a sub-selection of a time frame. A selection performs no grouping or aggregation.
TimeSelection.to_time_frame Creates a TimeFrame that has the same bounds as this TimeStrategy. NOTE: this does not mean the TimeFrame contains the same number of entries (group keys) as the result of applying this strategy – groups can skip days whereas TimeFrames are contiguous.
TimeSelection.selection_ticks Converts this into a slice for which ticks are selected (by index).
TimeSelection.group Groups the time series using the specified grouping.
TimeSelection.agg Aggregates the time series using the specified methods.
TimeGroup A kind of TimeStrategy describing a group operation on a time frame, with an optional sub-selection.
TimeGroup.to_time_frame Creates a TimeFrame that has the same bounds as this TimeStrategy. NOTE: this does not mean the TimeFrame contains the same number of entries (group keys) as the result of applying this strategy – groups can skip days whereas TimeFrames are contiguous.
TimeGroup.selection_ticks Converts this into a slice for which ticks are selected (by index).
TimeGroup.agg Aggregates the time series using the specified methods.
TimeAggregation A kind of TimeStrategy describing a group-and-aggregate operation on a time frame, with an optional sub-selection.
TimeGroup.to_time_frame Creates a TimeFrame that has the same bounds as this TimeStrategy. NOTE: this does not mean the TimeFrame contains the same number of entries (group keys) as the result of applying this strategy – groups can skip days whereas TimeFrames are contiguous.
TimeGroup.selection_ticks Converts this into a slice for which ticks are selected (by index).
TimeAggMethod A time-axis aggregation scheme. There may be one aggregation method for compartments and another for events.
EpiWeek A CDC-defined system for labeling weeks of the year.
epi_year_first_day Calculates the first day in an epi-year.
epi_week Calculates which epi week the given date belongs to.

epymorph.attribute

Data attributes in epymorph.

AttributeDef The definition of a data attribute.
ModuleNamespace A namespace with a specified strata and module.
AbsoluteName A fully-specified name (strata, module, and attribute ID).
ModuleName A partially-specified name with module and attribute ID.
AttributeName A partially-specified name with just an attribute ID.
NamePattern A name with a strata, module, and attribute ID that allows wildcards (*) so it can act as a pattern to match against AbsoluteNames.
ModuleNamePattern A name with a module and attribute ID that allows wildcards (*). Mostly this is useful to provide parameters to GPMs, which don’t have a concept of which strata they belong to. A ModuleNamePattern can be transformed into a full NamePattern by adding the strata.

epymorph.params

Functions for generating model parameters.

ParamSymbol The names of common symbols used in epymorph simulation expressions. For example, building a ParamExpressionTimeAndNode may make use of these symbols.
simulation_symbols Convenient function to retrieve the symbols used to represent simulation quantities.

epymorph.adrio.adrio

Abstract Data-Resource Interface Objects and related functionality.

ADRIO ADRIOs (or Abstract Data Resource Interface Objects) are functions which are intended to load data from external sources for epymorph simulations. This may be from web APIs, local files or databases, or anything imaginable.
ADRIO.data Retrieve the value of a requirement. You must declare the attribute in this function’s requirements list.
ADRIO.defer Defer processing to another instance of a SimulationFunction, returning the result of evaluation.
ADRIO.defer_context Defer processing to another instance of a SimulationFunction.
ADRIO.estimate_data Estimate the data usage for this ADRIO in a RUME.
ADRIO.evaluate Evaluates the ADRIO in the current context.
ADRIO.inspect Produce an inspection of the ADRIO’s data for the current context.
ADRIO.validate Override this method to validate the function evaluation result. Implementations should raise an appropriate error if results are not valid.
ADRIO.validate_context Validates the context before ADRIO evaluation.
ADRIO.validate_result Validates that the result produced by an ADRIO adheres to the declared result format.
ADRIO.with_context Constructs a clone of this instance which has access to the given context.
ADRIO.with_context_internal Constructs a clone of this instance which has access to the given context.
FetchADRIO A specialization of ADRIO that adds structure for ADRIOs that load data from an external source, such as an API. FetchADRIO provides an implementation of inspect, and requires that you implement methods _fetch and _process instead.
FetchADRIO.data Retrieve the value of a requirement. You must declare the attribute in this function’s requirements list.
FetchADRIO.defer Defer processing to another instance of a SimulationFunction, returning the result of evaluation.
FetchADRIO.defer_context Defer processing to another instance of a SimulationFunction.
FetchADRIO.estimate_data Estimate the data usage for this ADRIO in a RUME.
FetchADRIO.evaluate Evaluates the ADRIO in the current context.
FetchADRIO.inspect Produce an inspection of the ADRIO’s data for the current context.
FetchADRIO.validate Override this method to validate the function evaluation result. Implementations should raise an appropriate error if results are not valid.
FetchADRIO.validate_context Validates the context before ADRIO evaluation.
FetchADRIO.validate_result Validates that the result produced by an ADRIO adheres to the declared result format.
FetchADRIO.with_context Constructs a clone of this instance which has access to the given context.
FetchADRIO.with_context_internal Constructs a clone of this instance which has access to the given context.
ResultFormat Metadata about an ADRIO result.
InspectResult Inspection is the process by which an ADRIO fetches data and analyzes its quality. The simplest way to use an InspectionResult is to print it!
ADRIOError Exception while loading or processing data with an ADRIO.
ADRIOContextError The simulation context is invalid for using the ADRIO.
ADRIOCommunicationError The ADRIO could not communicate with the external resource.
ADRIOProcessingError An unexpected error occurred while processing ADRIO data.
adrio_cache ADRIO class decorator to add result-caching behavior.
range_mask_fn Creates a validation function for checking that values are in a given range.
validate_time_frame Validates that the context time frame is within the specified DateRange.

epymorph.adrio.acs5

ADRIOs for US Census ACS5 data.

Population Loads population data from the US Census ACS 5-Year Data (variable B01001_001E). ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
Population.estimate_data Estimate the data usage for this ADRIO in a RUME.
Population.with_context Constructs a clone of this instance which has access to the given context.
Population.inspect Produce an inspection of the ADRIO’s data for the current context.
Population.evaluate Evaluates the ADRIO in the current context.
PopulationByAgeTable Loads a table of population categorized by Census-defined age brackets from the US Census ACS 5-Year Data (group B01001). This table is most useful as the source data for one or more PopulationByAge ADRIOs, which knows how to select, group, and aggregate the data for simulations. ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
PopulationByAgeTable.estimate_data Estimate the data usage for this ADRIO in a RUME.
PopulationByAgeTable.with_context Constructs a clone of this instance which has access to the given context.
PopulationByAgeTable.inspect Produce an inspection of the ADRIO’s data for the current context.
PopulationByAgeTable.evaluate Evaluates the ADRIO in the current context.
PopulationByAge Processes a population-by-age table to extract the population of a specified age bracket, as limited by the age brackets defined by the US Census ACS 5-Year Data (group B01001). This ADRIO does not fetch data on its own, but requires you to provide another attribute named “population_by_age_table” for it to parse. Most often, this will be provided by a PopulationByAgeTable instance. This allows the table to be reused in case you need to calculate more than one population bracket (as is common in a multi-strata model).
PopulationByAge.estimate_data Estimate the data usage for this ADRIO in a RUME.
PopulationByAge.with_context Constructs a clone of this instance which has access to the given context.
PopulationByAge.inspect Produce an inspection of the ADRIO’s data for the current context.
PopulationByAge.evaluate Evaluates the ADRIO in the current context.
PopulationByAge.age_ranges Lists the AgeRanges used by the ACS5 population by age table in definition order for the given year. Note that this does not correspond one-to-one with the values in the B01001 table – this list omits “total” columns and duplicates.
PopulationByRace Loads population by race from the US Census ACS 5-Year Data (group B02001). ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
PopulationByRace.estimate_data Estimate the data usage for this ADRIO in a RUME.
PopulationByRace.with_context Constructs a clone of this instance which has access to the given context.
PopulationByRace.inspect Produce an inspection of the ADRIO’s data for the current context.
PopulationByRace.evaluate Evaluates the ADRIO in the current context.
AverageHouseholdSize Loads average household size data, based on the number of people living in a household, from the US Census ACS 5-Year Data (variable B25010_001E). ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
AverageHouseholdSize.estimate_data Estimate the data usage for this ADRIO in a RUME.
AverageHouseholdSize.with_context Constructs a clone of this instance which has access to the given context.
AverageHouseholdSize.inspect Produce an inspection of the ADRIO’s data for the current context.
AverageHouseholdSize.evaluate Evaluates the ADRIO in the current context.
MedianAge Loads median age data from the US Census ACS 5-Year Data (variable B01002_001E). ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
MedianAge.estimate_data Estimate the data usage for this ADRIO in a RUME.
MedianAge.with_context Constructs a clone of this instance which has access to the given context.
MedianAge.inspect Produce an inspection of the ADRIO’s data for the current context.
MedianAge.evaluate Evaluates the ADRIO in the current context.
MedianIncome Loads median income data in whole dollars from the US Census ACS 5-Year Data (variable B19013_001E), which is adjusted for inflation to the year of the data. ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
MedianIncome.estimate_data Estimate the data usage for this ADRIO in a RUME.
MedianIncome.with_context Constructs a clone of this instance which has access to the given context.
MedianIncome.inspect Produce an inspection of the ADRIO’s data for the current context.
MedianIncome.evaluate Evaluates the ADRIO in the current context.
GiniIndex Loads Gini Index data from the US Census ACS 5-Year Data (variable B19083_001E). This is a measure of income inequality on a scale from 0 (perfect equality) to 1 (perfect inequality). ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
GiniIndex.estimate_data Estimate the data usage for this ADRIO in a RUME.
GiniIndex.with_context Constructs a clone of this instance which has access to the given context.
GiniIndex.inspect Produce an inspection of the ADRIO’s data for the current context.
GiniIndex.evaluate Evaluates the ADRIO in the current context.
DissimilarityIndex Calculates the Dissimilarity Index using US Census ACS 5-Year Data (group B02001). The dissimilarity index is a measure of segregation comparing two races. Typically one compares a majority to a minority race and so the names of parameters reflect this, but this relationship between races involved isn’t strictly necessary. The numerical result can be interpreted as the percentage of “minority” individuals that would have to move in order for the geographic distribution of individuals within subdivisions of a location to match the distribution of individuals in the location as a whole. ACS5 data is compiled from surveys taken during a rolling five year period, and as such are estimates.
DissimilarityIndex.estimate_data Estimate the data usage for this ADRIO in a RUME.
DissimilarityIndex.with_context Constructs a clone of this instance which has access to the given context.
DissimilarityIndex.inspect Produce an inspection of the ADRIO’s data for the current context.
DissimilarityIndex.evaluate Evaluates the ADRIO in the current context.
AgeRange Models an age range for use with ACS age-categorized data. Unlike Python integer ranges, the end of the this range is inclusive. end can also be None which models the “and over” part of ranges like “85 years and over”.
AgeRange.contains Is the other range fully contained in (or coincident with) this range?
AgeRange.parse Parse the age range of an ACS field label; e.g.: Estimate!!Total:!!Male:!!22 to 24 years
RaceCategory A racial category defined by ACS5.

epymorph.adrio.cdc

ADRIOs for CDC health datasets.

COVIDFacilityHospitalization Loads COVID hospitalization data from HealthData.gov’s “COVID-19 Reported Patient Impact and Hospital Capacity by Facility” dataset. The data were reported by healthcare facilities on a weekly basis, starting 2019-12-29 and ending 2024-04-21, although the data is not complete over this entire range, nor over the entire United States.
COVIDFacilityHospitalization.estimate_data Estimate the data usage for this ADRIO in a RUME.
COVIDFacilityHospitalization.with_context Constructs a clone of this instance which has access to the given context.
COVIDFacilityHospitalization.inspect Produce an inspection of the ADRIO’s data for the current context.
COVIDFacilityHospitalization.evaluate Evaluates the ADRIO in the current context.
InfluenzaFacilityHospitalization Loads influenza hospitalization data from HealthData.gov’s “COVID-19 Reported Patient Impact and Hospital Capacity by Facility” dataset. The data were reported by healthcare facilities on a weekly basis, starting 2019-12-29 and ending 2024-04-21, although the data is not complete over this entire range, nor over the entire United States.
InfluenzaFacilityHospitalization.estimate_data Estimate the data usage for this ADRIO in a RUME.
InfluenzaFacilityHospitalization.with_context Constructs a clone of this instance which has access to the given context.
InfluenzaFacilityHospitalization.inspect Produce an inspection of the ADRIO’s data for the current context.
InfluenzaFacilityHospitalization.evaluate Evaluates the ADRIO in the current context.
COVIDCountyCases Loads COVID case data from data.cdc.gov’s dataset named “United States COVID-19 Community Levels by County”.
COVIDCountyCases.estimate_data Estimate the data usage for this ADRIO in a RUME.
COVIDCountyCases.with_context Constructs a clone of this instance which has access to the given context.
COVIDCountyCases.inspect Produce an inspection of the ADRIO’s data for the current context.
COVIDCountyCases.evaluate Evaluates the ADRIO in the current context.
COVIDStateHospitalization Loads COVID hospitalization data from data.cdc.gov’s dataset named “Weekly United States Hospitalization Metrics by Jurisdiction, During Mandatory Reporting Period from August 1, 2020 to April 30, 2024, and for Data Reported Voluntarily Beginning May 1, 2024, National Healthcare Safety Network (NHSN) - ARCHIVED”.
COVIDStateHospitalization.estimate_data Estimate the data usage for this ADRIO in a RUME.
COVIDStateHospitalization.with_context Constructs a clone of this instance which has access to the given context.
COVIDStateHospitalization.inspect Produce an inspection of the ADRIO’s data for the current context.
COVIDStateHospitalization.evaluate Evaluates the ADRIO in the current context.
InfluenzaStateHospitalization Loads influenza hospitalization data from data.cdc.gov’s dataset named “Weekly United States Hospitalization Metrics by Jurisdiction, During Mandatory Reporting Period from August 1, 2020 to April 30, 2024, and for Data Reported Voluntarily Beginning May 1, 2024, National Healthcare Safety Network (NHSN) - ARCHIVED”.
InfluenzaStateHospitalization.estimate_data Estimate the data usage for this ADRIO in a RUME.
InfluenzaStateHospitalization.with_context Constructs a clone of this instance which has access to the given context.
InfluenzaStateHospitalization.inspect Produce an inspection of the ADRIO’s data for the current context.
InfluenzaStateHospitalization.evaluate Evaluates the ADRIO in the current context.
COVIDVaccination Loads COVID hospitalization data from data.cdc.gov’s dataset named “COVID-19 Vaccinations in the United States,County”.
COVIDVaccination.estimate_data Estimate the data usage for this ADRIO in a RUME.
COVIDVaccination.with_context Constructs a clone of this instance which has access to the given context.
COVIDVaccination.inspect Produce an inspection of the ADRIO’s data for the current context.
COVIDVaccination.evaluate Evaluates the ADRIO in the current context.
CountyDeaths Loads COVID and total deaths data from data.cdc.gov’s dataset named “AH COVID-19 Death Counts by County and Week, 2020-present”.
CountyDeaths.estimate_data Estimate the data usage for this ADRIO in a RUME.
CountyDeaths.with_context Constructs a clone of this instance which has access to the given context.
CountyDeaths.inspect Produce an inspection of the ADRIO’s data for the current context.
CountyDeaths.evaluate Evaluates the ADRIO in the current context.
StateDeaths Loads deaths data (COVID-19, influenza, pneumonia, and total) from data.cdc.gov’s dataset named “Provisional COVID-19 Death Counts by Week Ending Date and State”.
StateDeaths.estimate_data Estimate the data usage for this ADRIO in a RUME.
StateDeaths.with_context Constructs a clone of this instance which has access to the given context.
StateDeaths.inspect Produce an inspection of the ADRIO’s data for the current context.
StateDeaths.evaluate Evaluates the ADRIO in the current context.

epymorph.adrio.commuting_flows

ADRIOs for US Census ACS Commuting Flows.

Commuters Loads data from the US Census Bureau’s ACS Commuting Flows product. This product uses answers to the American Community Survey over a five year period to estimate the number of workers aggregated by where they live and where they work. It is a useful estimate of regular commuting activity between locations.
Commuters.estimate_data Estimate the data usage for this ADRIO in a RUME.
Commuters.with_context Constructs a clone of this instance which has access to the given context.
Commuters.inspect Produce an inspection of the ADRIO’s data for the current context.
Commuters.evaluate Evaluates the ADRIO in the current context.