' 作为数据类型,python,pandas,dask,geopandas"/>

首页 > 解决方案 > Python Dask TypeError:无法解释'' 作为数据类型

问题描述

我正在尝试使用DaskGeoPandas Geometry输入。我执行以下操作:

sampel = dd.from_pandas(geo_data['geometry'], npartitions=5)

并得到一个dask.dataframe.core.Series看起来像这样的:

path_id
252107318    LINESTRING (12813.000 10472.000, 13249.000 109...
252133674    LINESTRING (18662.000 103630.000, 17879.000 10...
252133710    LINESTRING (12374.000 103503.000, 12787.000 10...
252134520    LINESTRING (91560.000 102779.000, 91372.000 10...
252134720    LINESTRING (136141.000 105360.000, 136353.000 ...
Name: geometry, dtype: geometry

我尝试将其转换LinestringsJSON文件,但是当我执行以下操作时:

sampel.map_partitions(lambda df: df.apply(lambda el: myfunc(el))).compute(scheduler='processes')

我收到错误消息TypeError: Cannot interpret '<geopandas.array.GeometryDtype object as a data type

有谁知道如何完成这项工作?还是不能使用Geometrytype in dask

谢谢 :)

标签: pythonpandasdaskgeopandas

解决方案


将 dask 与 GeoPandas 一起使用的最佳方法是dask-geopandas处理数据类型和类似情况的项目。它仍处于早期开发阶段,但已经允许您使用 DataFrame 和几何图形。有关详细信息,请参阅https://github.com/jsignell/dask-geopandas


推荐阅读