summaryrefslogtreecommitdiff
path: root/src/python/gudhi/point_cloud
diff options
context:
space:
mode:
authorMarc Glisse <marc.glisse@inria.fr>2020-05-11 21:55:21 +0200
committerMarc Glisse <marc.glisse@inria.fr>2020-05-11 21:55:21 +0200
commit8c9a1c674dcacc8b66e88897b6116561bb811ffa (patch)
tree2e13b9ac637377ff0feae7f7de5911c76c38c2e4 /src/python/gudhi/point_cloud
parentd86676e247bfa6f29b625a9a5752bf2a2fab438f (diff)
Handle k=1 in KNearestNeighbors with SciPy
Diffstat (limited to 'src/python/gudhi/point_cloud')
-rw-r--r--src/python/gudhi/point_cloud/knn.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/python/gudhi/point_cloud/knn.py b/src/python/gudhi/point_cloud/knn.py
index 34e80b5d..65896847 100644
--- a/src/python/gudhi/point_cloud/knn.py
+++ b/src/python/gudhi/point_cloud/knn.py
@@ -302,6 +302,10 @@ class KNearestNeighbors:
if self.params["implementation"] == "ckdtree":
qargs = {key: val for key, val in self.params.items() if key in {"p", "eps", "n_jobs"}}
distances, neighbors = self.kdtree.query(X, k=self.k, **qargs)
+ if k == 1:
+ # SciPy decided to squeeze the last dimension for k=1
+ distances = distances[:, None]
+ neighbors = neighbors[:, None]
if self.return_index:
if self.return_distance:
return neighbors, distances