1

So I want to create a LineString and get the length of the LineString from two sets of LatLon coordinates (points) in each row in a Pandas Dataframe, and store in a new column

Blockquote

How can I do this?

Vince
  • 20,017
  • 15
  • 45
  • 64
mortenhaga
  • 13
  • 1
  • 3
  • What have you tried? https://gis.stackexchange.com/questions/95670/how-to-create-a-shapely-linestring-from-two-points would seem to answer the question/ – John Powell Nov 22 '18 at 13:39

1 Answers1

1

You can use apply to create the output column like this:

import shapely.geometry as geom
your_df['geometry'] = your_df.apply(lambda x: geom.LineString([(x['startlat'], x['startlon']) , (x['endlat'], x['endlon'])]), axis = 1)

If your coordinates columns aren't float make sure to parse them first with float(...)

Hicham Zouarhi
  • 3,255
  • 2
  • 19
  • 32