geopandas.GeoSeries.to_arrow#
- GeoSeries.to_arrow(geometry_encoding='WKB', interleaved=True, include_z=None)[来源]#
将GeoSeries编码为GeoArrow格式。
有关GeoArrow规范的详细信息,请参见 https://geoarrow.org/。
这个函数返回一个通用的 Arrow 数组对象,实现了 Arrow PyCapsule Protocol(即具有一个
__arrow_c_array__方法)。这个对象可以被你所选择的支持此协议的 Arrow 实现使用。在1.0版本中添加。
- Parameters:
- geometry_encoding{‘WKB’, ‘geoarrow’ }, default ‘WKB’
用于数据转换的GeoArrow编码。
- interleavedbool, default True
仅与‘geoarrow’编码相关。如果为True,几何体的坐标将交错存储在一个固定大小的列表数组中。如果为False,坐标将作为单独的数组存储在一种结构类型中。
- include_zbool, default None
仅与‘geoarrow’编码相关(对于WKB,个体几何形状的维度得以保留)。 如果为False,返回2D几何形状。如果为True,将在输出中包含第三维度(如果几何形状没有第三维度,z坐标将为NaN)。 默认情况下,将从输入几何形状中推断维度。 请注意,对于空几何形状,这种推断可能不可靠(为了确保结果,建议指定关键字)。
- Returns:
- GeoArrowArray
一个通用的箭头数组对象,带有编码为GeoArrow的几何数据。
示例
>>> from shapely.geometry import Point >>> gser = geopandas.GeoSeries([Point(1, 2), Point(2, 1)]) >>> gser 0 POINT (1 2) 1 POINT (2 1) dtype: geometry
>>> arrow_array = gser.to_arrow() >>> arrow_array <geopandas.io._geoarrow.GeoArrowArray object at ...>
返回的数组对象需要被实现Arrow PyCapsule协议的库使用。例如,将数据包装为一个 pyarrow.Array(需要 pyarrow >= 14.0):
>>> import pyarrow as pa >>> array = pa.array(arrow_array) >>> array <pyarrow.lib.BinaryArray object at ...> [ 0101000000000000000000F03F0000000000000040, 01010000000000000000000040000000000000F03F ]