Eksportowanie danych tabeli i wektorów

Za pomocą Export.table możesz wyeksportować FeatureCollection jako plik CSV, SHP (plik kształtu), GeoJSON, KML, KMZ lub TFRecord. FeatureCollection może reprezentować wektory lub po prostu tabelę danych. W tym drugim przypadku obiekty w zbiorze będą miały geometrię null.

Pamiętaj o dodatkowych ograniczeniach podczas pracy z pewnymi formatami plików, w tym:

  • KML wszystkie geometrie FeatureCollection wyeksportowane do pliku KML zostaną przekształcone do nieprzekształconych współrzędnych (WGS84).
  • SHP plik FeatureCollection wyeksportowany do pliku Shape musi zawierać elementy o tym samym typie geometrii i projekcji oraz musi mieścić się w limitach rozmiaru pliku Shape. Nazwy kolumn są obcinane do 10 znaków, a nie mogą tworzyć zduplikowanych nazw kolumn.
  • TFRecord zobacz tę stronę.

do Cloud Storage

Aby wyeksportować FeatureCollection do Cloud Storage, użyj Export.table.toCloudStorage(). Na przykład, korzystając z definicji features:

Edytor kodu (JavaScript)

// Make a collection of points.
var features = ee.FeatureCollection([
  ee.Feature(ee.Geometry.Point(30.41, 59.933), {name: 'Voronoi'}),
  ee.Feature(ee.Geometry.Point(-73.96, 40.781), {name: 'Thiessen'}),
  ee.Feature(ee.Geometry.Point(6.4806, 50.8012), {name: 'Dirichlet'})
]);

// Export a KML file to Cloud Storage.
Export.table.toCloudStorage({
  collection: features,
  description:'vectorsToCloudStorageExample',
  bucket: 'your-bucket-name',
  fileNamePrefix: 'exampleTableExport',
  fileFormat: 'KML'
});

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

# Make a collection of points.
features = ee.FeatureCollection([
    ee.Feature(ee.Geometry.Point(30.41, 59.933), {'name': 'Voronoi'}),
    ee.Feature(ee.Geometry.Point(-73.96, 40.781), {'name': 'Thiessen'}),
    ee.Feature(ee.Geometry.Point(6.4806, 50.8012), {'name': 'Dirichlet'}),
])

# Export a KML file to Cloud Storage.
task = ee.batch.Export.table.toCloudStorage(
    collection=features,
    description='vectorsToCloudStorageExample',
    bucket='your-bucket-name',
    fileNamePrefix='exampleTableExport',
    fileFormat='KML',
)
task.start()

do komponentu

Aby wyeksportować FeatureCollection jako zasób Earth Engine, użyj Export.table.toAsset(). Na przykład, używając zdefiniowanej wcześniej właściwości features:

Edytor kodu (JavaScript)

// Export an ee.FeatureCollection as an Earth Engine asset.
Export.table.toAsset({
  collection: features,
  description:'exportToTableAssetExample',
  assetId: 'exampleAssetId',
});

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

# Export an ee.FeatureCollection as an Earth Engine asset.
task = ee.batch.Export.table.toAsset(
    collection=features,
    description='exportToTableAssetExample',
    assetId='projects/your-project/assets/exampleAssetId',
)
task.start()

Rozmiar i kształt zasobów tabeli Earth Engine są objęte kilkoma ograniczeniami:

  • Maksymalnie 100 milionów funkcji
  • Maksymalnie 1000 właściwości (kolumn)
  • Maksymalnie 100 tys. wierzchołków w geometrii każdego wiersza
  • Maksymalnie 100 tysięcy znaków na wartość ciągu znaków

do BigQuery.

Możesz wyeksportować FeatureCollection do tabeli BigQuery za pomocą Export.table.toBigQuery(). Dzięki temu możesz integrować dane Earth Engine z innymi danymi i narzędziami dostępnymi w BigQuery. Więcej informacji znajdziesz w przewodniku po eksportowaniu do BigQuery.

Edytor kodu (JavaScript)

Export.table.toBigQuery({
  collection: features,
  table: 'myproject.mydataset.mytable',
  description: 'put_my_data_in_bigquery',
  append: true,
  overwrite: false
});

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

task = ee.batch.Export.table.toBigQuery(
    collection=features,
    table='myproject.mydataset.mytable',
    description='put_my_data_in_bigquery',
    append=True,
    overwrite=False,
)
task.start()

na Dysk.

Aby wyeksportować FeatureCollection na swoje konto Dysku, użyj opcji Export.table.toDrive(). Na przykład:

Edytor kodu (JavaScript)

// Export the FeatureCollection to a KML file.
Export.table.toDrive({
  collection: features,
  description:'vectorsToDriveExample',
  fileFormat: 'KML'
});

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

# Export the FeatureCollection to a KML file.
task = ee.batch.Export.table.toDrive(
    collection=features, description='vectorsToDriveExample', fileFormat='KML'
)
task.start()

Pamiętaj, że format wyjściowy jest określony jako KML, aby obsługiwać dane geograficzne (SHP również nadaje się do eksportowania tabeli z geometrią). Aby wyeksportować tylko tabelę danych bez żadnych informacji geograficznych, wyeksportuj elementy z geometrią null w formacie CSV. Ten przykład pokazuje, jak za pomocą funkcji Export.table.toDrive() uzyskać wyniki potencjalnie długiego procesu redukcji:

Edytor kodu (JavaScript)

// Load a Landsat image.
var image = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140318');
var projection = image.select('B2').projection().getInfo();

// Create an arbitrary rectangle.
var region = ee.Geometry.Rectangle(-122.2806, 37.1209, -122.0554, 37.2413);

// Get a dictionary of means in the region.
var means = image.reduceRegion({
  reducer: ee.Reducer.mean(),
  geometry: region,
  crs: projection.crs,
  crsTransform: projection.transform,
});

// Make a feature without geometry and set the properties to the dictionary of means.
var feature = ee.Feature(null, means);

// Wrap the Feature in a FeatureCollection for export.
var featureCollection = ee.FeatureCollection([feature]);

// Export the FeatureCollection.
Export.table.toDrive({
  collection: featureCollection,
  description: 'exportTableExample',
  fileFormat: 'CSV'
});

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

# Load a Landsat image.
image = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140318')
projection = image.select('B2').projection().getInfo()

# Create an arbitrary rectangle.
region = ee.Geometry.Rectangle(-122.2806, 37.1209, -122.0554, 37.2413)

# Get a dictionary of means in the region.
means = image.reduceRegion(
    reducer=ee.Reducer.mean(),
    geometry=region,
    crs=projection['crs'],
    crsTransform=projection['transform'],
)

# Make a feature without geometry and set the properties to the dictionary of means.
feature = ee.Feature(None, means)

# Wrap the Feature in a FeatureCollection for export.
feature_collection = ee.FeatureCollection([feature])

# Export the FeatureCollection.
task = ee.batch.Export.table.toDrive(
    collection=feature_collection,
    description='exportTableExample',
    fileFormat='CSV',
)
task.start()

Pamiętaj, że w tym przykładzie format jest ustawiony na „CSV”, ponieważ w wyniku nie ma geometrii.