podpac.interpolators.NearestNeighbor¶
-
class
podpac.interpolators.
NearestNeighbor
(**kwargs)[source]¶ Bases:
podpac.core.interpolation.interpolator.Interpolator
Nearest Neighbor Interpolation
-
method
¶ Current interpolation method to use in Interpolator (i.e. ‘nearest’). This attribute is set during node evaluation when a new
Interpolation
class is constructed. See thepodpac.data.DataSource
interpolation attribute for more information on specifying the interpolator method.- Type
str
-
dims_supported
¶ List of unstacked dimensions supported by the interpolator. This attribute should be defined by the implementing
Interpolator
. Used by private convience method_filter_udims_supported()
.- Type
list
-
spatial_tolerance
¶ Default is inf. Maximum distance to the nearest coordinate in space. Cooresponds to the unit of the space measurement.
- Type
float
-
time_tolerance
¶ Default is inf. Maximum distance to the nearest coordinate in time coordinates. Accepts p.timedelta64() (i.e. np.timedelta64(1, ‘D’) for a 1-Day tolerance)
- Type
float
-
alt_tolerance
¶ Default is inf. Maximum distance to the nearest coordinate in altitude coordinates. Corresponds to the unit of the altitude as part of the requested coordinates
- Type
float
-
spatial_scale
¶ Default is 1. This only applies when the source has stacked dimensions with different units. The spatial_scale defines the factor that lat, lon coordinates will be scaled by (coordinates are divided by spatial_scale) to output a valid distance for the combined set of dimensions.
- Type
float
-
time_scale
¶ Default is 1. This only applies when the source has stacked dimensions with different units. The time_scale defines the factor that time coordinates will be scaled by (coordinates are divided by time_scale) to output a valid distance for the combined set of dimensions.
- Type
float
-
alt_scale
¶ Default is 1. This only applies when the source has stacked dimensions with different units. The alt_scale defines the factor that alt coordinates will be scaled by (coordinates are divided by alt_scale) to output a valid distance for the combined set of dimensions.
- Type
float
-
respect_bounds
¶ Default is True. If True, any requested dimension OUTSIDE of the bounds will be interpolated as ‘nan’. Otherwise, any point outside the bounds will have NN interpolation allowed.
- Type
bool
-
remove_nan
¶ Default is False. If True, nan’s in the source dataset will NOT be interpolated. This can be used if a value for the function is needed at every point of the request. It is not helpful when computing statistics, where nan values will be explicitly ignored. In that case, if remove_nan is True, nan values will take on the values of neighbors, skewing the statistical result.
- Type
bool
-
use_selector
¶ Default is True. If True, a subset of the coordinates will be selected BEFORE the data of a dataset is retrieved. This reduces the number of data retrievals needed for large datasets. In cases where remove_nan = True, the selector may select only nan points, in which case the interpolation fails to produce non-nan data. This usually happens when requesting a single point from a dataset that contains nans. As such, in these cases set use_selector = False to get a non-nan value.
- Type
bool
Methods
__init__
(**kwargs)can_interpolate
(udims, source_coordinates, …)Interpolate data from requested coordinates to source coordinates.
can_select
(udims, source_coordinates, …)init
()Overwrite this method if a Interpolator needs to do any additional initialization after the standard initialization.
interpolate
(udims, source_coordinates, …)Interpolate data from requested coordinates to source coordinates.
select_coordinates
(udims, …[, index_type])Downselect coordinates with interpolator method
trait_defaults
(*names, **metadata)Return a trait’s default value or a dictionary of them
trait_has_value
(name)Returns True if the specified trait has a value.
trait_values
(**metadata)A
dict
of trait names and their values.Attributes
A float trait.
A float trait.
definition
Interpolator definition
A trait for unicode strings.
name
Interpolator definition
A boolean (True, False) trait.
A boolean (True, False) trait.
A float trait.
A float trait.
A trait type representing a Union type.
A trait type representing a Union type.
A boolean (True, False) trait.
- Members
-
__init__
(**kwargs)¶
-
alt_scale
A float trait.
-
alt_tolerance
A float trait.
-
can_interpolate
(udims, source_coordinates, eval_coordinates)[source]¶ Interpolate data from requested coordinates to source coordinates.
- Parameters
udims (tuple) – dimensions to interpolate
source_coordinates (
podpac.Coordinates
) – Descriptionsource_data (podpac.core.units.UnitsDataArray) – Description
eval_coordinates (
podpac.Coordinates
) – Descriptionoutput_data (podpac.core.units.UnitsDataArray) – Description
- Raises
NotImplementedError –
- Returns
returns the updated output of interpolated data
- Return type
podpac.core.units.UnitDataArray
-
dims_supported
= ['lat', 'lon', 'alt', 'time']
-
interpolate
(udims, source_coordinates, source_data, eval_coordinates, output_data)[source]¶ Interpolate data from requested coordinates to source coordinates.
- Parameters
udims (tuple) – dimensions to interpolate
source_coordinates (
podpac.Coordinates
) – Descriptionsource_data (podpac.core.units.UnitsDataArray) – Description
eval_coordinates (
podpac.Coordinates
) – Descriptionoutput_data (podpac.core.units.UnitsDataArray) – Description
- Raises
NotImplementedError –
- Returns
returns the updated output of interpolated data
- Return type
podpac.core.units.UnitDataArray
-
method
A trait for unicode strings.
-
methods_supported
= ['nearest']¶
-
remove_nan
A boolean (True, False) trait.
-
respect_bounds
A boolean (True, False) trait.
-
spatial_scale
A float trait.
-
spatial_tolerance
A float trait.
-
time_scale
A trait type representing a Union type.
-
time_tolerance
A trait type representing a Union type.
-
use_selector
A boolean (True, False) trait.
-