我有一个包含这三列的数据框:
lat long Mapped Location
36.0455 -86.7122 POINT (-86.7122 36.0455)
36.1343 -86.7806 POINT (-86.7806 36.1343)
36.1208 -86.8029 POINT (-86.8029 36.1208)
我想使用映射位置点创建一个地理数据框,但列的数据类型是对象。我可以使用纬度列和长列创建一个新的几何列,但这似乎是一种浪费,因为我已经有了该信息。
我尝试过:
df['Mapped Location'] = df['Mapped Location'].astype(str)
df['Mapped Location'] = df['Mapped Location'].apply(wkt.loads)
我收到此错误:
预期的单词但遇到数字:'nan'
以下是将 DataFrame 转换为 GeoDataFrame 的方法:
import geopandas as gpd
from shapely import wkt
# Assuming df is your original DataFrame
# Convert the 'Mapped Location' column to Shapely geometries
df['geometry'] = df['Mapped Location'].apply(wkt.loads)
# Create a GeoDataFrame from the DataFrame
gdf = gpd.GeoDataFrame(df, geometry='geometry')
# Optional: Drop the 'Mapped Location' column if you no longer need it
gdf = gdf.drop(columns=['Mapped Location'])