Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Sensibilisation à
l'Intelligence Artificielle
Voir le programme détaillé
Module « scipy.interpolate »

Fonction interpn - module scipy.interpolate

Signature de la fonction interpn

def interpn(points, values, xi, method='linear', bounds_error=True, fill_value=nan) 

Description

help(scipy.interpolate.interpn)

Multidimensional interpolation on regular or rectilinear grids.

Strictly speaking, not all regular grids are supported - this function
works on *rectilinear* grids, that is, a rectangular grid with even or
uneven spacing.

Parameters
----------
points : tuple of ndarray of float, with shapes (m1, ), ..., (mn, )
    The points defining the regular grid in n dimensions. The points in
    each dimension (i.e. every elements of the points tuple) must be
    strictly ascending or descending.

values : array_like, shape (m1, ..., mn, ...)
    The data on the regular grid in n dimensions. Complex data is
    accepted.

    .. deprecated:: 1.13.0
        Complex data is deprecated with ``method="pchip"`` and will raise an
        error in SciPy 1.15.0. This is because ``PchipInterpolator`` only
        works with real values. If you are trying to use the real components of
        the passed array, use ``np.real`` on ``values``.

xi : ndarray of shape (..., ndim)
    The coordinates to sample the gridded data at

method : str, optional
    The method of interpolation to perform. Supported are "linear",
    "nearest", "slinear", "cubic", "quintic", "pchip", and "splinef2d".
    "splinef2d" is only supported for 2-dimensional data.

bounds_error : bool, optional
    If True, when interpolated values are requested outside of the
    domain of the input data, a ValueError is raised.
    If False, then `fill_value` is used.

fill_value : number, optional
    If provided, the value to use for points outside of the
    interpolation domain. If None, values outside
    the domain are extrapolated.  Extrapolation is not supported by method
    "splinef2d".

Returns
-------
values_x : ndarray, shape xi.shape[:-1] + values.shape[ndim:]
    Interpolated values at `xi`. See notes for behaviour when
    ``xi.ndim == 1``.

See Also
--------
NearestNDInterpolator : Nearest neighbor interpolation on unstructured
                        data in N dimensions
LinearNDInterpolator : Piecewise linear interpolant on unstructured data
                       in N dimensions
RegularGridInterpolator : interpolation on a regular or rectilinear grid
                          in arbitrary dimensions (`interpn` wraps this
                          class).
RectBivariateSpline : Bivariate spline approximation over a rectangular mesh
scipy.ndimage.map_coordinates : interpolation on grids with equal spacing
                                (suitable for e.g., N-D image resampling)

Notes
-----

.. versionadded:: 0.14

In the case that ``xi.ndim == 1`` a new axis is inserted into
the 0 position of the returned array, values_x, so its shape is
instead ``(1,) + values.shape[ndim:]``.

If the input data is such that input dimensions have incommensurate
units and differ by many orders of magnitude, the interpolant may have
numerical artifacts. Consider rescaling the data before interpolation.

Examples
--------
Evaluate a simple example function on the points of a regular 3-D grid:

>>> import numpy as np
>>> from scipy.interpolate import interpn
>>> def value_func_3d(x, y, z):
...     return 2 * x + 3 * y - z
>>> x = np.linspace(0, 4, 5)
>>> y = np.linspace(0, 5, 6)
>>> z = np.linspace(0, 6, 7)
>>> points = (x, y, z)
>>> values = value_func_3d(*np.meshgrid(*points, indexing='ij'))

Evaluate the interpolating function at a point

>>> point = np.array([2.21, 3.12, 1.15])
>>> print(interpn(points, values, point))
[12.63]



Vous êtes un professionnel et vous avez besoin d'une formation ? Machine Learning
avec Scikit-Learn
Voir le programme détaillé