ee.Array.slice
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Crée un sous-tableau en découpant chaque position le long de l'axe donné, de "start" (inclus) à "end" (exclusif), par incréments de "step". Le résultat aura autant de dimensions que l'entrée, et la même longueur dans toutes les directions, sauf l'axe de tranchage, où la longueur sera le nombre de positions de "start" à "end" par "step" qui sont dans la plage de la longueur du tableau d'entrée le long de l'axe. Cela signifie que le résultat peut être de longueur 0 le long de l'axe donné si start=end, ou si les valeurs de début ou de fin sont entièrement hors plage.
Utilisation | Renvoie |
---|
Array.slice(axis, start, end, step) | Tableau |
Argument | Type | Détails |
---|
ceci : array | Tableau | Tableau à découper. |
axis | Entier, valeur par défaut : 0 | Axe sur lequel effectuer le découpage. |
start | Entier, valeur par défaut : 0 | Coordonnée de la première tranche (incluse) le long de l'axe. Les nombres négatifs sont utilisés pour positionner le début du découpage par rapport à la fin du tableau. -1 correspond à la dernière position sur l'axe, -2 à l'avant-dernière position, etc. |
end | Entier, valeur par défaut : null | Coordonnée (exclusive) à laquelle arrêter de prendre des tranches. Par défaut, il s'agit de la longueur de l'axe donné. Les nombres négatifs sont utilisés pour positionner la fin du découpage par rapport à la fin du tableau. Par exemple, -1 exclut la dernière position, -2 exclut les deux dernières positions, etc. |
step | Entier, valeur par défaut : 1 | Séparation entre les tranches le long de l'axe ; une tranche sera prélevée à chaque multiple entier de "step" de "start" (inclus) à "end" (exclusif). Doit être positive. |
Exemples
Éditeur de code (JavaScript)
var array1x6 = ee.Array([1, 2, 3, 4, 5, 6]);
print(array1x6.slice()); // [1,2,3,4,5,6]
print(array1x6.slice(0)); // [1,2,3,4,5,6]
print(array1x6.slice(0, 0, 6, 1)); // [1,2,3,4,5,6]
print(array1x6.slice(0, 0, 10, 1)); // [1,2,3,4,5,6]
print(array1x6.slice(0, 2)); // [3,4,5,6]
print(array1x6.slice(0, 5)); // [6]
print(array1x6.slice(0, 6)); // []
print(array1x6.slice(0, 0, 2)); // [1,2]
print(array1x6.slice(0, 0, 0)); // []
// Negative start and end.
print(array1x6.slice(0, 0, -3)); // [1,2,3]
print(array1x6.slice(0, -2, 6)); // [5,6]
print(array1x6.slice(0, 0, 6, 2)); // [1,3,5]
print(array1x6.slice(0, 0, 6, 3)); // [1,4]
print(array1x6.slice(0, 0, 6, 4)); // [1,5]
print(array1x6.slice(0, 0, 6, 6)); // [1]
print(array1x6.slice(0, 2, 6, 2)); // [3,5]
var array3x2 = ee.Array([[1, 2], [3, 4], [5, 6]]);
print(array3x2.slice()); // [[1,2],[3,4],[5,6]]
print(array3x2.slice(0)); // [[1,2],[3,4],[5,6]]
print(array3x2.slice(0, 0)); // [[1,2],[3,4],[5,6]]
print(array3x2.slice(0, 0, 1)); // [[1,2]]
print(array3x2.slice(0, 0, 2)); // [[1,2],[3,4]]
print(array3x2.slice(0, 0, 3, 1)); // [[1,2],[3,4],[5,6]]
print(array3x2.slice(0, 0, 3, 2)); // [[1,2],[5,6]]
print(array3x2.slice(0, 1, 3, 2)); // [[3,4]]
print(array3x2.slice(0, 0, 3, 3)); // [[1,2]]
print(array3x2.slice(1)); // [[1,2],[3,4],[5,6]]
print(array3x2.slice(1, 1)); // [[2],[4],[6]]
print(array3x2.slice(1, 0, 1)); // [[1],[3],[5]]
var empty = ee.Array([], ee.PixelType.int8());
print(empty.slice()); // []
print(empty.slice(0)); // []
print(empty.slice(0, 0, 0, 1)); // []
Configuration de Python
Consultez la page
Environnement Python pour en savoir plus sur l'API Python et sur l'utilisation de geemap
pour le développement interactif.
import ee
import geemap.core as geemap
Colab (Python)
array1x6 = ee.Array([1, 2, 3, 4, 5, 6])
display(array1x6.slice()) # [1, 2, 3, 4, 5, 6]
display(array1x6.slice(0)) # [1, 2, 3, 4, 5, 6]
display(array1x6.slice(0, 0, 6, 1)) # [1, 2, 3, 4, 5, 6]
display(array1x6.slice(0, 0, 10, 1)) # [1, 2, 3, 4, 5, 6]
display(array1x6.slice(0, 2)) # [3, 4, 5, 6]
display(array1x6.slice(0, 5)) # [6]
display(array1x6.slice(0, 6)) # []
display(array1x6.slice(0, 0, 2)) # [1, 2]
display(array1x6.slice(0, 0, 0)) # []
# Negative start and end.
display(array1x6.slice(0, 0, -3)) # [1, 2, 3]
display(array1x6.slice(0, -2, 6)) # [5, 6]
display(array1x6.slice(0, 0, 6, 2)) # [1, 3, 5]
display(array1x6.slice(0, 0, 6, 3)) # [1, 4]
display(array1x6.slice(0, 0, 6, 4)) # [1, 5]
display(array1x6.slice(0, 0, 6, 6)) # [1]
display(array1x6.slice(0, 2, 6, 2)) # [3, 5]
array3x2 = ee.Array([[1, 2], [3, 4], [5, 6]])
display(array3x2.slice()) # [[1, 2], [3, 4], [5, 6]]
display(array3x2.slice(0)) # [[1, 2], [3, 4], [5, 6]]
display(array3x2.slice(0, 0)) # [[1, 2],[3, 4],[5, 6]]
display(array3x2.slice(0, 0, 1)) # [[1, 2]]
display(array3x2.slice(0, 0, 2)) # [[1, 2], [3, 4]]
display(array3x2.slice(0, 0, 3, 1)) # [[1, 2], [3, 4], [5, 6]]
display(array3x2.slice(0, 0, 3, 2)) # [[1, 2], [5, 6]]
display(array3x2.slice(0, 1, 3, 2)) # [[3, 4]]
display(array3x2.slice(0, 0, 3, 3)) # [[1, 2]]
display(array3x2.slice(1)) # [[1, 2], [3, 4], [5, 6]]
display(array3x2.slice(1, 1)) # [[2], [4], [6]]
display(array3x2.slice(1, 0, 1)) # [[1], [3], [5]]
empty = ee.Array([], ee.PixelType.int8())
display(empty.slice()) # []
display(empty.slice(0)) # []
display(empty.slice(0, 0, 0, 1)) # []
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/26 (UTC).
[null,null,["Dernière mise à jour le 2025/07/26 (UTC)."],[[["\u003cp\u003e\u003ccode\u003eArray.slice()\u003c/code\u003e extracts a subarray from an input array along a specified axis, similar to slicing in Python.\u003c/p\u003e\n"],["\u003cp\u003eIt uses \u003ccode\u003estart\u003c/code\u003e, \u003ccode\u003eend\u003c/code\u003e, and \u003ccode\u003estep\u003c/code\u003e parameters to define the portion of the array to extract, with negative indices referencing from the end.\u003c/p\u003e\n"],["\u003cp\u003eThe resulting subarray retains the original dimensions except along the sliced axis, where its length depends on the slice parameters.\u003c/p\u003e\n"],["\u003cp\u003eIf the slice parameters result in no elements being selected, an empty array is returned.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eArray.slice()\u003c/code\u003e can be used on multi-dimensional arrays by specifying the axis to slice along.\u003c/p\u003e\n"]]],[],null,["# ee.Array.slice\n\nCreates a subarray by slicing out each position along the given axis from the 'start' (inclusive) to 'end' (exclusive) by increments of 'step'. The result will have as many dimensions as the input, and the same length in all directions except the slicing axis, where the length will be the number of positions from 'start' to 'end' by 'step' that are in range of the input array's length along 'axis'. This means the result can be length 0 along the given axis if start=end, or if the start or end values are entirely out of range.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|----------------------------------------------------------|---------|\n| Array.slice`(`*axis* `, `*start* `, `*end* `, `*step*`)` | Array |\n\n| Argument | Type | Details |\n|---------------|------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `array` | Array | Array to slice. |\n| `axis` | Integer, default: 0 | The axis to slice on. |\n| `start` | Integer, default: 0 | The coordinate of the first slice (inclusive) along 'axis'. Negative numbers are used to position the start of slicing relative to the end of the array, where -1 starts at the last position on the axis, -2 starts at the next to last position, etc. |\n| `end` | Integer, default: null | The coordinate (exclusive) at which to stop taking slices. By default this will be the length of the given axis. Negative numbers are used to position the end of slicing relative to the end of the array, where -1 will exclude the last position, -2 will exclude the last two positions, etc. |\n| `step` | Integer, default: 1 | The separation between slices along 'axis'; a slice will be taken at each whole multiple of 'step' from 'start' (inclusive) to 'end' (exclusive). Must be positive. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\nvar array1x6 = ee.Array([1, 2, 3, 4, 5, 6]);\nprint(array1x6.slice()); // [1,2,3,4,5,6]\nprint(array1x6.slice(0)); // [1,2,3,4,5,6]\nprint(array1x6.slice(0, 0, 6, 1)); // [1,2,3,4,5,6]\nprint(array1x6.slice(0, 0, 10, 1)); // [1,2,3,4,5,6]\n\nprint(array1x6.slice(0, 2)); // [3,4,5,6]\nprint(array1x6.slice(0, 5)); // [6]\nprint(array1x6.slice(0, 6)); // []\nprint(array1x6.slice(0, 0, 2)); // [1,2]\nprint(array1x6.slice(0, 0, 0)); // []\n\n// Negative start and end.\nprint(array1x6.slice(0, 0, -3)); // [1,2,3]\nprint(array1x6.slice(0, -2, 6)); // [5,6]\n\nprint(array1x6.slice(0, 0, 6, 2)); // [1,3,5]\nprint(array1x6.slice(0, 0, 6, 3)); // [1,4]\nprint(array1x6.slice(0, 0, 6, 4)); // [1,5]\nprint(array1x6.slice(0, 0, 6, 6)); // [1]\n\nprint(array1x6.slice(0, 2, 6, 2)); // [3,5]\n\nvar array3x2 = ee.Array([[1, 2], [3, 4], [5, 6]]);\nprint(array3x2.slice()); // [[1,2],[3,4],[5,6]]\nprint(array3x2.slice(0)); // [[1,2],[3,4],[5,6]]\nprint(array3x2.slice(0, 0)); // [[1,2],[3,4],[5,6]]\nprint(array3x2.slice(0, 0, 1)); // [[1,2]]\nprint(array3x2.slice(0, 0, 2)); // [[1,2],[3,4]]\nprint(array3x2.slice(0, 0, 3, 1)); // [[1,2],[3,4],[5,6]]\nprint(array3x2.slice(0, 0, 3, 2)); // [[1,2],[5,6]]\nprint(array3x2.slice(0, 1, 3, 2)); // [[3,4]]\nprint(array3x2.slice(0, 0, 3, 3)); // [[1,2]]\n\nprint(array3x2.slice(1)); // [[1,2],[3,4],[5,6]]\nprint(array3x2.slice(1, 1)); // [[2],[4],[6]]\nprint(array3x2.slice(1, 0, 1)); // [[1],[3],[5]]\n\nvar empty = ee.Array([], ee.PixelType.int8());\nprint(empty.slice()); // []\nprint(empty.slice(0)); // []\nprint(empty.slice(0, 0, 0, 1)); // []\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\narray1x6 = ee.Array([1, 2, 3, 4, 5, 6])\ndisplay(array1x6.slice()) # [1, 2, 3, 4, 5, 6]\ndisplay(array1x6.slice(0)) # [1, 2, 3, 4, 5, 6]\ndisplay(array1x6.slice(0, 0, 6, 1)) # [1, 2, 3, 4, 5, 6]\ndisplay(array1x6.slice(0, 0, 10, 1)) # [1, 2, 3, 4, 5, 6]\n\ndisplay(array1x6.slice(0, 2)) # [3, 4, 5, 6]\ndisplay(array1x6.slice(0, 5)) # [6]\ndisplay(array1x6.slice(0, 6)) # []\ndisplay(array1x6.slice(0, 0, 2)) # [1, 2]\ndisplay(array1x6.slice(0, 0, 0)) # []\n\n# Negative start and end.\ndisplay(array1x6.slice(0, 0, -3)) # [1, 2, 3]\ndisplay(array1x6.slice(0, -2, 6)) # [5, 6]\n\ndisplay(array1x6.slice(0, 0, 6, 2)) # [1, 3, 5]\ndisplay(array1x6.slice(0, 0, 6, 3)) # [1, 4]\ndisplay(array1x6.slice(0, 0, 6, 4)) # [1, 5]\ndisplay(array1x6.slice(0, 0, 6, 6)) # [1]\n\ndisplay(array1x6.slice(0, 2, 6, 2)) # [3, 5]\n\narray3x2 = ee.Array([[1, 2], [3, 4], [5, 6]])\ndisplay(array3x2.slice()) # [[1, 2], [3, 4], [5, 6]]\ndisplay(array3x2.slice(0)) # [[1, 2], [3, 4], [5, 6]]\ndisplay(array3x2.slice(0, 0)) # [[1, 2],[3, 4],[5, 6]]\ndisplay(array3x2.slice(0, 0, 1)) # [[1, 2]]\ndisplay(array3x2.slice(0, 0, 2)) # [[1, 2], [3, 4]]\ndisplay(array3x2.slice(0, 0, 3, 1)) # [[1, 2], [3, 4], [5, 6]]\ndisplay(array3x2.slice(0, 0, 3, 2)) # [[1, 2], [5, 6]]\ndisplay(array3x2.slice(0, 1, 3, 2)) # [[3, 4]]\ndisplay(array3x2.slice(0, 0, 3, 3)) # [[1, 2]]\n\ndisplay(array3x2.slice(1)) # [[1, 2], [3, 4], [5, 6]]\ndisplay(array3x2.slice(1, 1)) # [[2], [4], [6]]\ndisplay(array3x2.slice(1, 0, 1)) # [[1], [3], [5]]\n\nempty = ee.Array([], ee.PixelType.int8())\ndisplay(empty.slice()) # []\ndisplay(empty.slice(0)) # []\ndisplay(empty.slice(0, 0, 0, 1)) # []\n```"]]