esda.Join_Counts_Local

class esda.Join_Counts_Local(connectivity=None, permutations=999, n_jobs=1, keep_simulations=True, seed=None, island_weight=0, drop_islands=True)[source]

Univariate Local Join Count Statistic

__init__(connectivity=None, permutations=999, n_jobs=1, keep_simulations=True, seed=None, island_weight=0, drop_islands=True)[source]

Initialize a Local_Join_Count estimator

Parameters:
connectivityscipy.sparse matrix object

the connectivity structure describing the relationships between observed units. Need not be row-standardized.

permutationsint

number of random permutations for calculation of pseudo p_values

n_jobsint

Number of cores to be used in the conditional randomisation. If -1, all available cores are used.

keep_simulationsbool (default True)

If True, the entire matrix of replications under the null is stored in memory and accessible; otherwise, replications are not saved

seedNone/int

Seed to ensure reproducibility of conditional randomizations. Must be set here, and not outside of the function, since numba does not correctly interpret external seeds nor numpy.random.RandomState instances.

island_weight:

value to use as a weight for the “fake” neighbor for every island. If numpy.nan, will propagate to the final local statistic depending on the stat_func. If 0, then the lag is always zero for islands.

drop_islandsbool (default True)

Whether or not to preserve islands as entries in the adjacency list. By default, observations with no neighbors do not appear in the adjacency list. If islands are kept, they are coded as self-neighbors with zero weight. See libpysal.weights.to_adjlist().

Attributes:
LJCnumpy array

array containing the univariate Local Join Count (LJC).

p_simnumpy array

array containing the simulated p-values for each unit.

Methods

__init__([connectivity, permutations, ...])

Initialize a Local_Join_Count estimator

fit(y[, n_jobs, permutations])

Parameters:

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

set_fit_request(*[, n_jobs, permutations])

Request metadata passed to the fit method.

set_params(**params)

Set the parameters of this estimator.

fit(y, n_jobs=1, permutations=999)[source]
Parameters:
ynumpy.ndarray

array containing binary (0/1) data

Returns
——-
the fitted estimator.

Notes

Technical details and derivations found in [].

Examples

>>> import libpysal
>>> w = libpysal.weights.lat2W(4, 4)
>>> y = np.ones(16)
>>> y[0:8] = 0
>>> LJC_uni = Local_Join_Count(connectivity=w).fit(y)
>>> LJC_uni.LJC
>>> LJC_uni.p_sim

Guerry data replicating GeoDa tutorial >>> import libpysal >>> import geopandas as gpd >>> guerry = libpysal.examples.load_example(‘Guerry’) >>> guerry_ds = gpd.read_file(guerry.get_path(‘Guerry.shp’)) >>> guerry_ds[‘SELECTED’] = 0 >>> guerry_ds.loc[(guerry_ds[‘Donatns’] > 10997), ‘SELECTED’] = 1 >>> w = libpysal.weights.Queen.from_dataframe(guerry_ds) >>> LJC_uni = Local_Join_Count(connectivity=w).fit(guerry_ds[‘SELECTED’]) >>> LJC_uni.LJC >>> LJC_uni.p_sim

set_fit_request(*, n_jobs: bool | None | str = '$UNCHANGED$', permutations: bool | None | str = '$UNCHANGED$') Join_Counts_Local

Request metadata passed to the fit method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config()). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

  • True: metadata is requested, and passed to fit if provided. The request is ignored if metadata is not provided.

  • False: metadata is not requested and the meta-estimator will not pass it to fit.

  • None: metadata is not requested, and the meta-estimator will raise an error if the user provides it.

  • str: metadata should be passed to the meta-estimator with this given alias instead of the original name.

The default (sklearn.utils.metadata_routing.UNCHANGED) retains the existing request. This allows you to change the request for some parameters and not others.

New in version 1.3.

Note

This method is only relevant if this estimator is used as a sub-estimator of a meta-estimator, e.g. used inside a Pipeline. Otherwise it has no effect.

Parameters:
n_jobsstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Metadata routing for n_jobs parameter in fit.

permutationsstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Metadata routing for permutations parameter in fit.

Returns:
selfobject

The updated object.