From 261768a9e9f6da72d7a8dae9e6030be2f5ccd877 Mon Sep 17 00:00:00 2001 From: eli knaap Date: Fri, 14 Jun 2024 14:32:17 -0700 Subject: [PATCH] keep table values for nonsig observations in localknox hotspot (#136) --- pointpats/spacetime.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pointpats/spacetime.py b/pointpats/spacetime.py index c17f515..f15a3ea 100644 --- a/pointpats/spacetime.py +++ b/pointpats/spacetime.py @@ -28,6 +28,7 @@ import libpysal as lps import numpy as np import pandas +import pandas as pd import scipy.stats as stats from libpysal import cg from libpysal.graph import Graph @@ -1352,6 +1353,13 @@ def hotspots(self, crit=0.05, inference="permutation", keep_neighbors=True): (self.adjlist.focal.isin(pdf_sig.index.values)) | self.adjlist.neighbor.isin(pdf_sig.index.values) ] + pdf_sig = pd.concat([pdf_sig, + self._gdf[self._gdf.index.isin(temp_neighbors.neighbor.values) + + ][[col, "time"]].rename( + columns={col: "pvalue", "time": "focal_time"} + ) + ]) pdf_sig = pdf_sig.merge( temp_neighbors, how='outer', left_index=True, right_on="focal" @@ -1361,7 +1369,7 @@ def hotspots(self, crit=0.05, inference="permutation", keep_neighbors=True): graph = Graph.from_adjacency(pdf_sig.assign(weight=1)) pdf_sig["cluster"] = graph.component_labels.values if not keep_neighbors : - pdf_sig = pdf_sig.dropna(subset=['pvalue']) + pdf_sig = pdf_sig[pdf_sig.pvalue<=crit] return self._gdf[["geometry"]].merge( pdf_sig.copy(), left_index=True, right_on="focal"