Processing and gridding spatial data, machine-learning style
Released on: 2023/05/08
DOI: https://doi.org/10.5281/zenodo.7907182
Note: Verde v1.7.0 is the last release that is compatible with Python 3.6.
New features:
verde.KNeighbors
class for nearest neighbor interpolation (#378)verde.Cubic
gridder class based on SciPy (#374)verde.Linear
gridder class based on SciPy (#372)verde.line_coordinates
, a 1D version of verde.grid_coordinates
(#390)scoring
parameter for verde.SplineCV
to specify the scoring function (#380)Deprecations:
engine
argument of Spline/SplineCV
(#373)engine
argument in VectorSpline2D
(#410)verde.ScipyGridder
in favor of the new Linear/Cubic/KNeighbors
(#393)scatter
method of all interpolators (#357)grid
method (#394)verde.VectorSpline2D
(#385)Improvements:
mindist
in verde.Spline
by using a better Green's function for small distances (#401)verde.line_coordinates
if spacing >= 2 * interval
(#406)Linear/Cubic/KNeighbors
in verde.project_grid
(#395)Linear/Cubic
(#391)grid_coordinates
(#388)Documentation:
verde.make_xarray_grid
(#399)verde.base.BaseGridder.fit
docstring (#397)verde.Chain
tutorial (#386)Maintenance:
stacklevel=2
(#407)setup.py
with PyPA "build" (#371)np.bool
and np.int
(#362)This release contains contributions from:
Released on: 2022/03/25
DOI: https://doi.org/10.5281/zenodo.6384887
Deprecation:
CheckerBoard
class to verde.synthetic
(#353)verde.test
function which will be removed in v2.0.0 (#344)datasets
module, which will be replaced by Ensaio in the future (#277)New features:
grid
method instead of just region
and spacing
(#326)Documentation:
dims
in example of make_xarray_grid
(#329)Maintenance:
setup.py
to setup.cfg
(#348)normalize
argument when creating scikit-learn solvers (#333)This release contains contributions from:
Released on: 2021/03/22
Minor changes:
make_xarray_grid
to receive data=None
instead of raising an error. This is used to create an empty xarray.Dataset
(#318)Maintenance:
This release contains contributions from:
Released on: 2021/03/18
New features:
cross_val_score
instead of always using the .score
method of the gridder (#273)verde.make_xarray_grid
to simplify the creation of xarray.Dataset
from individual numpy arrays that represent a 2D grid (#282 and #300)Enhancements:
verde.rolling_window
arguments, like missing spacing
or shape
and invalid window sizes (#280)DeprecationWarning
with FutureWarning
since these are intended for end-users, which allows us to avoid having to set warning.simplefilter
(#305 and #293)Documentation:
Maintenance:
get_data_names
and related check functions to simplify their logic and make them more useful (#295)doc/conf.py
sphinx configuration file with Black (#275)dask.distributed
(#311)This release contains contributions from:
Released on: 2020/06/04
Bug fixes:
extra_coords
to gridder methods. (#264)New features:
BlockShuffleSplit
and BlockKFold
. These are scikit-learn compatible cross-validators that split the data into spatial blocks before assigning them to folds. Blocked cross-validation can help avoid overestimation of prediction accuracy for spatial data. The classes work with verde.cross_val_score
and any other function/method/class that accepts a scikit-learn cross-validator. (#251 and #254)verde.train_test_split
by passing in a spacing
or shape
parameters. (#253 and #257)Base classes:
verde.base.least_squares
to copy Jacobian matrix. (#255)extra_coords
keyword argument to outputs of BaseGridder
methods. (#265)Maintenance:
repr
changes in scikit-learn 0.23.0. (#267)Documentation:
This release contains contributions from:
DOI: https://doi.org/10.5281/zenodo.3739449
Bug fixes:
profile
method of gridders if a projection is given. The method has the option to apply a projection to the coordinates before predicting so we can pass geographic coordinates to Cartesian gridders. In these cases, the distance along the profile is calculated by the profile_coordinates
function with the unprojected coordinates (in the geographic case it would be degrees). The profile point calculation is also done assuming that coordinates are Cartesian, which is clearly wrong if inputs are longitude and latitude. To fix this, we now project the input points prior to passing them to profile_coordinates
. This means that the distances are Cartesian and generation of profile points is also Cartesian (as is assumed by the function). The generated coordinates are projected back so that the user gets longitude and latitude but distances are still projected Cartesian meters. (#231)verde.grid_to_table
now sets the correct order for coordinates. We were relying on the order of the coords
attribute of the xarray.Dataset
for the order of the coordinates. This is wrong because xarray takes the coordinate order from the dims
attribute instead, which is what we should also have been doing. (#229)Documentation:
verde.base.BaseGridder
docstrings. Most methods don't really depend on the coordinate system so use a more generic language to allow derived classes to specify their coordinate systems without having to overload the base methods just to rewrite the docstrings. (#240)New features:
verde.convexhul_mask
to mask points in a grid that fall outside the convex hull defined by data points. (#237)verde.project_grid
that transforms 2D gridded data using a given projection. It re-samples the data using ScipyGridder
(by default) and runs a blocked mean (optional) to avoid aliasing when the points aren't evenly distributed in the projected coordinates (like in polar projections). Finally, it applies a convexhul_mask
to the grid to avoid extrapolation to points that had no original data. (#246)verde.expanding_window
for selecting data that falls inside of an expanding window around a central point. (#238)verde.rolling_window
for rolling window selections of irregularly sampled data. (#236)Improvements:
verde.grid_to_table
to take xarray.DataArray
as input. (#235)Maintenance:
This release contains contributions from:
DOI: https://doi.org/10.5281/zenodo.3620851
DEPRECATIONS (the following features are deprecated and will be removed in Verde v2.0.0):
verde.datasets.fetch_rio_magnetic
and verde.datasets.setup_rio_magnetic_map
are deprecated. Please use another dataset instead. (#213)verde.VectorSpline2D
is deprecated. The class is specific for GPS/GNSS data and doesn't fit the general-purpose nature of Verde. The implementation will be moved to the Erizo package instead. (#214)client
keyword argument for verde.cross_val_score
and verde.SplineCV
is deprecated in favor of the new delayed
argument (see below). (#222)New features:
dask.delayed
interface for parallelism in cross-validation instead of the futures interface (dask.distributed.Client
). It's easier and allows building the entire graph lazily before executing. To use the new feature, pass delayed=True
to verde.cross_val_score
and verde.SplineCV
. The argument client
in both of these is deprecated (see above). (#222)verde.SplineCV.spline_
. This is the fitted verde.Spline
object using the optimal parameters. (#219)drop_coords
to allow verde.BlockReduce
and verde.BlockMean
to reduce extra elements in coordinates
(basically, treat them as data). Default to True
to maintain backwards compatibility. If False
, will no longer drop coordinates after the second one but will apply the reduction in blocks to them as well. The reduced coordinates are returned in the same order in the coordinates
. (#198)Improvements:
~/.verde/data
. This is so users can more easily clean up unused files. Because this is system specific, function verde.datasets.locate
was added to return the cache folder location. (#220)Bug fixes:
parallel=True
and numba.prange
in the numba compiled functions. Using it on the Green's function was raising a warning because there is nothing to parallelize. (#221)Maintenance:
Documentation:
This release contains contributions from:
DOI: https://doi.org/10.5281/zenodo.3347076
Bug fixes:
New functions/classes:
Improvements:
Documentation:
Maintenance:
This release contains contributions from:
https://doi.org/10.5281/zenodo.1478245
New features:
Improvements:
Bug fixes:
New contributors to the project: