geo.filterRows() 函数
geo.filterRows() 是实验性的并且随时可能更改。
geo.filterRows() 按照指定的地理区域过滤数据,并提供严格过滤的选项。
此函数是 geo.gridFilter() 和 geo.strictFilter() 的组合。 输入数据必须包含一个 s2_cell_id 列,该列是 组键的一部分。
函数类型签名
(
<-tables: stream[{B with s2_cell_id: string, lon: D, lat: C}],
region: A,
?level: int,
?maxSize: int,
?minSize: int,
?s2cellIDLevel: int,
?strict: bool,
) => stream[{B with s2_cell_id: string, lon: D, lat: C}] where A: Record
有关更多信息,请参见 Function type signatures。
参数
区域
(必填) 包含所需数据点的区域。
为形状指定记录属性。
最小尺寸
覆盖指定区域所需的最小单元格数量。 默认值为 24。
最大尺寸
覆盖指定区域的最大单元格数量。 默认值是 -1(无限制)。
级别
S2 cell level网格单元。 默认值为-1。
注意: level 与 minSize 和 maxSize 互斥,并且必须小于或等于 s2cellIDLevel。
s2cellIDLevel
S2 单元格级别
用于 s2_cell_id 标签。默认为 -1(从 s2_cell_id 标签中检测 S2 单元格级别)。
严格
启用严格的地理数据过滤。默认值是 true。
严格过滤仅返回在定义区域内具有坐标的点。非严格过滤返回定义区域部分覆盖的所有S2网格单元中的点。
表格
输入数据。默认是管道转发数据 (<-).
示例
按区域严格过滤地时数据
import "experimental/geo"
data
|> geo.filterRows(region: {lat: 40.69335938, lon: -73.30078125, radius: 100.0})
按区域大致过滤地理时间数据
import "experimental/geo"
data
|> geo.filterRows(region: {lat: 40.69335938, lon: -73.30078125, radius: 100.0}, strict: false)