segregation.aspatial.Exposure¶
-
class
segregation.aspatial.
Exposure
(data, group_pop_var, total_pop_var)[source]¶ Classic Exposure Index
- Parameters
- dataa pandas DataFrame
- group_pop_varstring
The name of variable in data that contains the population size of the group of interest (X)
- total_pop_varstring
The name of variable in data that contains the total population of the unit
Notes
The group of interest is labelled as group X, whilst Y is the complementary group. Groups X and Y are mutually excludent.
Based on Massey, Douglas S., and Nancy A. Denton. “The dimensions of residential segregation.” Social forces 67.2 (1988): 281-315.
Reference: [MD88].
Examples
In this example, we will calculate the Exposure Index (xPy) for the Riverside County using the census tract data of 2010. The group of interest (X) is non-hispanic black people which is the variable nhblk10 in the dataset and the Y group is the other part of the population.
Firstly, we need to perform some import the modules and the respective function.
>>> import pandas as pd >>> import geopandas as gpd >>> import segregation >>> from segregation.aspatial import Exposure
Secondly, we need to read the data:
>>> # This example uses all census data that the user must provide your own copy of the external database. >>> # A step-by-step procedure for downloading the data can be found here: https://github.com/spatialucr/geosnap/blob/master/examples/01_getting_started.ipynb >>> # After the user download the LTDB_Std_All_fullcount.zip and extract the files, the filepath might be something like presented below. >>> filepath = '~/data/LTDB_Std_2010_fullcount.csv' >>> census_2010 = pd.read_csv(filepath, encoding = "ISO-8859-1", sep = ",")
Then, we filter only for the desired county (in this case, Riverside County):
>>> df = census_2010.loc[census_2010.county == "Riverside County"][['pop10','tractid']]
The value is estimated below.
>>> exposure_index = Exposure(df, 'tractid', 'pop10') >>> exposure_index.statistic 0.886785172226587
The interpretation of this number is that if you randomly pick a X member of a specific area, there is 88.68% of probability that this member shares a unit with a Y member.
- Attributes
- statisticfloat
Exposure Index
- core_dataa pandas DataFrame
A pandas DataFrame that contains the columns used to perform the estimate.
-
__init__
(data, group_pop_var, total_pop_var)[source]¶ Initialize self. See help(type(self)) for accurate signature.
Methods
__init__
(data, group_pop_var, total_pop_var)Initialize self.