momepy.Simpson¶
-
class
momepy.
Simpson
(gdf, values, spatial_weights, unique_id, binning='HeadTailBreaks', gini_simpson=False, inverse=False, categorical=False, categories=None, verbose=True, **classification_kwds)[source]¶ Calculates the Simpson’s diversity index of values within neighbours defined in
spatial_weights
.Uses
mapclassify.classifiers
under the hood for binning. Requiresmapclassify>=.2.1.0
dependency.\[\lambda=\sum_{i=1}^{R} p_{i}^{2}\]Adapted from [Fel18].
- Parameters
- gdfGeoDataFrame
GeoDataFrame containing morphological tessellation
- valuesstr, list, np.array, pd.Series
the name of the dataframe column,
np.array
, orpd.Series
where is stored character value.- spatial_weightslibpysal.weights, optional
spatial weights matrix - If None, Queen contiguity matrix of set order will be calculated based on objects.
- unique_idstr
name of the column with unique id used as
spatial_weights
index- binningstr (default ‘HeadTailBreaks’)
One of mapclassify classification schemes. For details see mapclassify API documentation.
- gini_simpsonbool (default False)
return Gini-Simpson index instead of Simpson index (
1 - λ
)- inversebool (default False)
return Inverse Simpson index instead of Simpson index (
1 / λ
)- categoricalbool (default False)
treat values as categories (will not use
binning
)- categorieslist-like (default None)
list of categories. If None
values.unique()
is used.- verbosebool (default True)
if True, shows progress bars in loops and indication of steps
- **classification_kwdsdict
Keyword arguments for classification scheme For details see mapclassify documentation.
See also
momepy.simpson_diversity
Calculates the Simpson’s diversity index of data
Examples
>>> sw = momepy.sw_high(k=3, gdf=tessellation_df, ids='uID') >>> tessellation_df['area_Simpson'] = mm.Simpson(tessellation_df, ... 'area', ... sw, ... 'uID').series 100%|██████████| 144/144 [00:00<00:00, 455.83it/s]
- Attributes
- seriesSeries
Series containing resulting values
- gdfGeoDataFrame
original GeoDataFrame
- valuesSeries
Series containing used values
- swlibpysal.weights
spatial weights matrix
- idSeries
Series containing used unique ID
- binningstr
binning method
- binsmapclassify.classifiers.Classifier
generated bins
- classification_kwdsdict
classification_kwds
-
__init__
(gdf, values, spatial_weights, unique_id, binning='HeadTailBreaks', gini_simpson=False, inverse=False, categorical=False, categories=None, verbose=True, **classification_kwds)[source]¶ Initialize self. See help(type(self)) for accurate signature.
Methods
__init__
(gdf, values, spatial_weights, unique_id)Initialize self.