From e0b9d75401760927d050954139f424dfeae73b84 Mon Sep 17 00:00:00 2001 From: Illviljan <14371165+Illviljan@users.noreply.github.com> Date: Sun, 10 Dec 2023 20:24:22 +0100 Subject: [PATCH] Speed up localize --- xarray/core/missing.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xarray/core/missing.py b/xarray/core/missing.py index b55fd6049a6..8abcfb2dc98 100644 --- a/xarray/core/missing.py +++ b/xarray/core/missing.py @@ -547,11 +547,11 @@ def _localize(var, indexes_coords): """ indexes = {} for dim, [x, new_x] in indexes_coords.items(): - minval = np.nanmin(new_x.values) - maxval = np.nanmax(new_x.values) + new_x_loaded = new_x.values + minval = np.nanmin(new_x_loaded) + maxval = np.nanmax(new_x_loaded) index = x.to_index() - imin = index.get_indexer([minval], method="nearest").item() - imax = index.get_indexer([maxval], method="nearest").item() + imin, imax = index.get_indexer([minval, maxval], method="nearest") indexes[dim] = slice(max(imin - 2, 0), imax + 2) indexes_coords[dim] = (x[indexes[dim]], new_x) return var.isel(**indexes), indexes_coords