簡體   English   中英

dask_geopandas:只有幾何列的 GeoDataFrame

[英]dask_geopandas: GeoDataFrame with only geometry column

使用geopandas可以做到:

from shapely.geometry import Point
import geopandas as gpd

points = [Point(0,0)]
gser = gpd.GeoSeries(points)
gdf = gpd.GeoDataFrame(geometry=gser.values)

如果我有一個dask_geopandas.GeoSeries dask_geopandas的等效行是什么? 似乎不能直接使用dask_geopandas.GeoDataFrame構造函數,必須依賴靜態方法,但看不到任何合適的方法。

編輯:

澄清一下:我有一個dask_geopandas.GeoSeries (沒有geopandas.GeoSeries任何地方),我怎么能創建一個dask_geopandas.GeoDataFrame只包含一個列,一個幾何列,其值來自dask_geopandas.GeoSeries

不起作用的片段:

dgser # is a dask_geopandas.GeoSeries
dgdf = dask_geopandas.GeoDataFrame(geometry=dgser.values)

我認為這個用例已經被 dask 系列的to_frame()方法覆蓋了。

dask_geodataframe = dask_series.to_frame()

這應該足夠了,不需要通過 vanilla dask dataframe 的路徑。

一種選擇是使用from_geopandas

from dask_geopandas import from_geopandas
from shapely.geometry import Point
from geopandas import GeoSeries, GeoDataFrame

points = [Point(0,0)]
gser = GeoSeries(points)
gdf = GeoDataFrame(geometry=gser.values)
dgdf = from_geopandas(gdf, npartitions=1)

我想通了(雖然我希望有一個內置的方法):

dgser # is a dask_geopandas.GeoSeries
ddf = dgser.to_dask_dataframe()
ddf.columns = ["geometry"]
dgfg = dask_geopandas.from_dask_dataframe(ddf)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM