Implementation involves first calculating the time lags between query point and observed data (with locational coordinates and time); for observed locations within time lag of query, the function calculates the Euclidean distances between query location and all potential neighbors and select those within specified distance threshold.
The future argument can be used to exclude data in the future in neighbor search. This is useful in an extrapolation application.