公告:所有在
2025 年 4 月 15 日之前注册使用 Earth Engine 的非商业项目都必须
验证是否符合非商业性质的资格条件,才能继续使用 Earth Engine。
过滤 FeatureCollection
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
过滤 FeatureCollection
类似于过滤 ImageCollection
。(请参阅“过滤 ImageCollection”部分)。featureCollection.filterDate()
和 featureCollection.filterBounds()
是便捷方法,featureCollection.filter()
方法可与任何适用的 ee.Filter
搭配使用。例如:
Code Editor (JavaScript)
// Load watersheds from a data table.
var sheds = ee.FeatureCollection('USGS/WBD/2017/HUC06')
// Convert 'areasqkm' property from string to number.
.map(function(feature){
var num = ee.Number.parse(feature.get('areasqkm'));
return feature.set('areasqkm', num);
});
// Define a region roughly covering the continental US.
var continentalUS = ee.Geometry.Rectangle(-127.18, 19.39, -62.75, 51.29);
// Filter the table geographically: only watersheds in the continental US.
var filtered = sheds.filterBounds(continentalUS);
// Check the number of watersheds after filtering for location.
print('Count after filter:', filtered.size());
// Filter to get only larger continental US watersheds.
var largeSheds = filtered.filter(ee.Filter.gt('areasqkm', 25000));
// Check the number of watersheds after filtering for size and location.
print('Count after filtering by size:', largeSheds.size());
Python 设置
如需了解 Python API 以及如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# Load watersheds from a data table.
sheds = (
ee.FeatureCollection('USGS/WBD/2017/HUC06')
# Convert 'areasqkm' property from string to number.
.map(
lambda feature: feature.set(
'areasqkm', ee.Number.parse(feature.get('areasqkm'))
)
)
)
# Define a region roughly covering the continental US.
continental_us = ee.Geometry.Rectangle(-127.18, 19.39, -62.75, 51.29)
# Filter the table geographically: only watersheds in the continental US.
filtered = sheds.filterBounds(continental_us)
# Check the number of watersheds after filtering for location.
display('Count after filter:', filtered.size())
# Filter to get only larger continental US watersheds.
large_sheds = filtered.filter(ee.Filter.gt('areasqkm', 25000))
# Check the number of watersheds after filtering for size and location.
display('Count after filtering by size:', large_sheds.size())
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-25。
[null,null,["最后更新时间 (UTC):2025-07-25。"],[[["\u003cp\u003eFiltering \u003ccode\u003eFeatureCollection\u003c/code\u003e objects is similar to filtering \u003ccode\u003eImageCollection\u003c/code\u003e objects and can be done using methods like \u003ccode\u003efilterDate()\u003c/code\u003e, \u003ccode\u003efilterBounds()\u003c/code\u003e, and \u003ccode\u003efilter()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003efilter()\u003c/code\u003e method accepts an \u003ccode\u003eee.Filter\u003c/code\u003e object, allowing for flexible filtering based on various criteria.\u003c/p\u003e\n"],["\u003cp\u003eThe provided examples demonstrate how to filter a dataset of watersheds based on location and size using the \u003ccode\u003efilterBounds()\u003c/code\u003e and \u003ccode\u003efilter()\u003c/code\u003e methods respectively.\u003c/p\u003e\n"],["\u003cp\u003eCode snippets in JavaScript and Python (using \u003ccode\u003egeemap\u003c/code\u003e and Colab) illustrate the implementation of the filtering process.\u003c/p\u003e\n"]]],[],null,["# Filtering a FeatureCollection\n\nFiltering a `FeatureCollection` is analogous to filtering an\n`ImageCollection`. (See the [Filtering an\nImageCollection section](/earth-engine/guides/ic_filtering)). There are the `featureCollection.filterDate()`,\nand `featureCollection.filterBounds()` convenience methods and the\n`featureCollection.filter()` method for use with any applicable\n`ee.Filter`. For example:\n\n### Code Editor (JavaScript)\n\n```javascript\n// Load watersheds from a data table.\nvar sheds = ee.FeatureCollection('USGS/WBD/2017/HUC06')\n // Convert 'areasqkm' property from string to number.\n .map(function(feature){\n var num = ee.Number.parse(feature.get('areasqkm'));\n return feature.set('areasqkm', num);\n });\n\n// Define a region roughly covering the continental US.\nvar continentalUS = ee.Geometry.Rectangle(-127.18, 19.39, -62.75, 51.29);\n\n// Filter the table geographically: only watersheds in the continental US.\nvar filtered = sheds.filterBounds(continentalUS);\n\n// Check the number of watersheds after filtering for location.\nprint('Count after filter:', filtered.size());\n\n// Filter to get only larger continental US watersheds.\nvar largeSheds = filtered.filter(ee.Filter.gt('areasqkm', 25000));\n\n// Check the number of watersheds after filtering for size and location.\nprint('Count after filtering by size:', largeSheds.size());\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\n# Load watersheds from a data table.\nsheds = (\n ee.FeatureCollection('USGS/WBD/2017/HUC06')\n # Convert 'areasqkm' property from string to number.\n .map(\n lambda feature: feature.set(\n 'areasqkm', ee.Number.parse(feature.get('areasqkm'))\n )\n )\n)\n\n# Define a region roughly covering the continental US.\ncontinental_us = ee.Geometry.Rectangle(-127.18, 19.39, -62.75, 51.29)\n\n# Filter the table geographically: only watersheds in the continental US.\nfiltered = sheds.filterBounds(continental_us)\n\n# Check the number of watersheds after filtering for location.\ndisplay('Count after filter:', filtered.size())\n\n# Filter to get only larger continental US watersheds.\nlarge_sheds = filtered.filter(ee.Filter.gt('areasqkm', 25000))\n\n# Check the number of watersheds after filtering for size and location.\ndisplay('Count after filtering by size:', large_sheds.size())\n```"]]