diff options
author | Marc Glisse <marc.glisse@inria.fr> | 2020-05-11 21:55:21 +0200 |
---|---|---|
committer | Marc Glisse <marc.glisse@inria.fr> | 2020-05-11 21:55:21 +0200 |
commit | 8c9a1c674dcacc8b66e88897b6116561bb811ffa (patch) | |
tree | 2e13b9ac637377ff0feae7f7de5911c76c38c2e4 /src/python/gudhi/point_cloud | |
parent | d86676e247bfa6f29b625a9a5752bf2a2fab438f (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.py | 4 |
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 |