segregation.local.MultiLocalSimpsonConcentration¶
-
class
segregation.local.
MultiLocalSimpsonConcentration
(data, groups)[source]¶ Calculation of Local Simpson concentration index for each unit
- Parameters
- dataa pandas DataFrame of n rows
- groupslist of strings.
The variables names in data of the groups of interest of the analysis.
Notes
Based on the local version of Equation 1 of page 37 of Reardon, Sean F., and Glenn Firebaugh. “Measures of multigroup segregation.” Sociological methodology 32.1 (2002): 33-67.
Simpson’s concentration index can be simply interpreted as the probability that two individuals chosen at random and independently from the population will be found to belong to the same group.
Higher values means lesser segregation.
Simpson’s Concentration + Simpson’s Interaction = 1
Reference: [RF02].
Examples
In this example, we are going to use 2000 Census Tract Data for Sacramento MSA, CA. The groups of interest are White, Black, Asian and Hispanic population.
Firstly, we need to perform some import the modules and the respective function.
>>> import libpysal >>> import geopandas as gpd >>> from segregation.local import MultiLocalSimpsonConcentration
Then, we read the data and create an auxiliary list with only the necessary columns for fitting the index.
>>> input_df = gpd.read_file(libpysal.examples.get_path("sacramentot2.shp")) >>> groups_list = ['WHITE_', 'BLACK_', 'ASIAN_','HISP_']
The value is estimated below.
>>> index = MultiLocalSimpsonConcentration(input_df, groups_list) >>> index.statistics[0:10] # Values of first 10 units array([0.84564007, 0.66608405, 0.50090253, 0.8700551 , 0.90194944, 0.86871822, 0.95552644, 0.9601067 , 0.96276946, 0.88241452])
- Attributes
- statisticsnp.array(n)
Local Simpson concentration values for each unit
- core_dataa pandas DataFrame
A pandas DataFrame that contains the columns used to perform the estimate.
Methods
__init__
(data, groups)Initialize self.