-1

I am trying to convert data frame to geodata frame where data frame geometry applying for wkt.loads to convert geometry Line String to geodata frame but getting below error: text = text.encode('ascii') AttributeError: 'LineString' object has no attribute 'encode' Below are code: df['geometry'] = df['geometry'].apply(wkt.loads) gdf = geopandas.GeoDataFrame(df, geometry='geometry')

Rtop
  • 59
  • 5

1 Answers1

0

You need to provide sample of the data in the geometry column of your df['geometry'] to get an accurate answer. If you are using wkt.loads, make sure your column is exactly as text as 'LineString ((1.0 1.0, 2.0 2.0))'.

Urban87
  • 243
  • 1
  • 8
  • 'for i in range(10): a_list.append([id, x_pt[i], x_pt[i],LineString([x_pt[i], x_pt[i]])]) df = pd.DataFrame(a_list, columns=['id', 'x_pt', 'y_pt', 'geometry']) df['geometry'] = df['geometry'].apply(wkt.loads) gdf = geopandas.GeoDataFrame( df, geometry='geometry')' Please check above code which i am using. – Rtop Jun 29 '21 at 07:55
  • @RanaShaktisingh If you have already loaded LineString as shapely module and have LineString in geometry column then you don't need wkt.loads. If you have already loaded LineString as shapely module and have LineString in geometry column then you don't need wkt.loads. Omit df['geometry'] = df['geometry'].apply(wkt.loads) and create gdf directly. – Urban87 Jun 29 '21 at 08:02