esda.Join_Counts¶
- class esda.Join_Counts(y, w, permutations=999, drop_islands=True)[source]¶
Binary Join Counts
- Parameters:
Notes
Technical details and derivations can be found in [CO81].
Examples
>>> import numpy as np >>> import libpysal >>> w = libpysal.weights.lat2W(4, 4) >>> y = np.ones(16) >>> y[0:8] = 0 >>> np.random.seed(12345) >>> from esda.join_counts import Join_Counts >>> jc = Join_Counts(y, w) >>> jc.bb 10.0 >>> jc.bw 4.0 >>> jc.ww 10.0 >>> jc.J 24.0 >>> len(jc.sim_bb) 999 >>> round(jc.p_sim_bb, 3) 0.003 >>> round(np.mean(jc.sim_bb), 3) 5.547 >>> np.max(jc.sim_bb) 10.0 >>> np.min(jc.sim_bb) 0.0 >>> len(jc.sim_bw) 999 >>> jc.p_sim_bw 1.0 >>> np.mean(jc.sim_bw) 12.811811811811811 >>> np.max(jc.sim_bw) 24.0 >>> np.min(jc.sim_bw) 7.0 >>> round(jc.chi2_p, 3) 0.004 >>> jc.p_sim_chi2 0.002
- Attributes:
- y
array
original variable
- w
W
original w object
- permutations
int
number of permutations
- bb
float
number of black-black joins
- ww
float
number of white-white joins
- bw
float
number of black-white joins
- J
float
number of joins
- sim_bb
array
(if permutations>0) vector of bb values for permuted samples
- p_sim_bb
array
- (if permutations>0)
p-value based on permutations (one-sided) null: spatial randomness alternative: the observed bb is greater than under randomness
- mean_bb
float
average of permuted bb values
- min_bb
float
minimum of permuted bb values
- max_bb
float
maximum of permuted bb values
- sim_bw
array
(if permutations>0) vector of bw values for permuted samples
- p_sim_bw
array
(if permutations>0) p-value based on permutations (one-sided) null: spatial randomness alternative: the observed bw is greater than under randomness
- mean_bw
float
average of permuted bw values
- min_bw
float
minimum of permuted bw values
- max_bw
float
maximum of permuted bw values
- chi2
float
Chi-square statistic on contingency table for join counts
- chi2_p
float
Analytical p-value for chi2
- chi2_dof
int
Degrees of freedom for analytical chi2
- crosstab
DataFrame
Contingency table for observed join counts
- expected
DataFrame
Expected contingency table for the null
- p_sim_chi2
float
p-value for chi2 under random spatial permutations
- 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()
.
- y
Methods
__init__
(y, w[, permutations, drop_islands])by_col
(df, cols[, w, inplace, pvalue, outvals])Function to compute a Join_Count statistic on a dataframe
- classmethod by_col(df, cols, w=None, inplace=False, pvalue='sim', outvals=None, **stat_kws)[source]¶
Function to compute a Join_Count statistic on a dataframe
- Parameters:
- df
pandas.DataFrame
a pandas dataframe with a geometry column
- cols
str
orlist
ofstr
name or list of names of columns to use to compute the statistic
- 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
- inplacebool
a boolean denoting whether to operate on the dataframe inplace or to return a series contaning the results of the computation. If operating inplace, the derived columns will be named ‘column_join_count’
- pvalue
str
a string denoting which pvalue should be returned. Refer to the the Join_Count statistic’s documentation for available p-values
- outvals
list
ofstrings
list of arbitrary attributes to return as columns from the Join_Count statistic
- **stat_k
dict
options to pass to the underlying statistic. For this, see the documentation for the Join_Count statistic.
- df
- Returns: