esda.Moran_Local¶
- class esda.Moran_Local(y, w, transformation='r', permutations=999, geoda_quads=False, n_jobs=1, keep_simulations=True, seed=None, island_weight=0)[source]¶
Local Moran Statistics.
- Parameters:
- w
W
|Graph
spatial weights instance as W or Graph aligned with y
- transformation{‘R’, ‘B’, ‘D’, ‘U’, ‘V’}
weights transformation, default is row-standardized “r”. Other options include “B”: binary, “D”: doubly-standardized, “U”: untransformed (general weights), “V”: variance-stabilizing.
p_values
If True use GeoDa scheme: HH=1, LL=2, LH=3, HL=4
If False use PySAL Scheme: HH=1, LH=2, LL=3, HL=4
all available cores are used.
- keep_simulations
Boolean
(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.
W
| Graph
original w object
arrray
(if permutations>0) standardized Is based on permutations
Boolean
(default=True) If True, the entire matrix of replications under the null is stored in memory and accessible; otherwise, replications are not saved
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.
Notes
For technical details see [Ans95].
Examples
>>> import libpysal
>>> import numpy as np
>>> np.random.seed(10)
>>> w = libpysal.io.open(libpysal.examples.get_path("desmith.gal")).read()
>>> f = libpysal.io.open(libpysal.examples.get_path("desmith.txt"))
>>> y = np.array(f.by_col['z'])
>>> from esda.moran import Moran_Local
>>> lm = Moran_Local(y, w, transformation = "r", permutations = 99)
>>> lm.q
array([4, 4, 4, 2, 3, 3, 1, 4, 3, 3])
>>> lm.p_z_sim[0]
0.24669152541631179
>>> lm = Moran_Local(y, w, transformation = "r", permutations = 99, geoda_quads=True)
>>> lm.q
array([4, 4, 4, 3, 2, 2, 1, 4, 2, 2])
Note random components result is slightly different values across architectures so the results have been removed from doctests and will be moved into unittests that are conditional on architectures.
- __init__(y, w, transformation='r', permutations=999, geoda_quads=False, n_jobs=1, keep_simulations=True, seed=None, island_weight=0)[source]¶
Methods
|
|
|
Function to compute a Moran_Local statistic on a dataframe. |
|
Create interactive map of LISA indicators |
|
Return LISA cluster labels for each observation. |
- classmethod by_col(df, cols, w=None, inplace=False, pvalue='sim', outvals=None, **stat_kws)[source]¶
Function to compute a Moran_Local statistic on a dataframe.
- Parameters:
- w
W
|Graph
spatial weights instance as W or Graph aligned with the dataframe. If not provided, this is searched for in the dataframe’s metadata
return a series contaning the results of the computation. If
operating inplace, the derived columns will be named
‘column_moran_local’
the Moran_Local statistic’s documentation for available p-values
Moran_Local statistic
documentation for the Moran_Local statistic.
the
relevant
columns
attached.
- explore(gdf, crit_value=0.05, **kwargs)[source]¶
Create interactive map of LISA indicators
- Parameters:
Folium.Map
interactive map with LISA clusters