To convert a DataFrame to a GeoDataFrame in Pandas, you can use the geopandas.GeoDataFrame
constructor and provide the geometry column. Here's an example:
import pandas as pd
import geopandas as gpd
from shapely.geometry import Point
# Sample DataFrame with x, y coordinates
data = {'ID': [1, 2, 3],
'Name': ['Point1', 'Point2', 'Point3'],
'Longitude': [-73.9874, -74.006, -73.9855],
'Latitude': [40.7488, 40.7128, 40.7549]}
df = pd.DataFrame(data)
# Create a GeoDataFrame by providing geometry (Point) column
geometry = [Point(lon, lat) for lon, lat in zip(df['Longitude'], df['Latitude'])]
gdf = gpd.GeoDataFrame(df, geometry=geometry)
# Display the GeoDataFrame
print(gdf)
In this example:
- A DataFrame (
df
) is created with columns for ID, Name, Longitude, and Latitude. - A GeoDataFrame (
gdf
) is created by providing the DataFrame (df
) and specifying the geometry column (geometry
) as a list ofPoint
objects.
Adjust the column names and types based on your data, and choose the appropriate geometry type for your spatial data. The example uses Point
geometries for latitude and longitude coordinates.