Home > Back-end >  Too many values to unpack? python-radar
Too many values to unpack? python-radar

Time:01-25

I have problem which when i run the code it shows an error:

Traceback (most recent call last):
  File "C:\Users\server\PycharmProjects\Publictest2\main.py", line 19, in <module>
    Distance = radar.route.distance(Starts, End, modes='transit')
  File "C:\Users\server\PycharmProjects\Publictest2\venv\lib\site-packages\radar\endpoints.py", line 612, in distance
    (origin_lat, origin_lng) = origin
ValueError: too many values to unpack (expected 2)

My Code:

from radar import RadarClient

import pandas as pd

API_key = 'API'

radar = RadarClient(API_key)

file = pd.read_excel('files')

file['AntGeo'] = Sourced[['Ant_lat', 'Ant_long']].apply(','.join, axis=1)

file['BaseGeo'] = Sourced[['Base_lat', 'Base_long']].apply(','.join, axis=1)

antpoint = file['AntGeo']

basepoint = file['BaseGeo']

for antpoint in antpoint:

    dist= radar.route.distance(antpoint , basepoint, modes='transit')

    dist= dist['routes'][0]['distance']

    dist= dist / 1000

CodePudding user response:

Firstly, your error code does not match your given code sample correctly.

It is apparent you are working with the python library for the Radar API.
Your corresponding line 19 is dist= radar.route.distance(antpoint , basepoint, modes='transit')

From the radar-python 'pypi manual', your route should be referenced as:

## Routing
radar.route.distance(origin=[lat,lng], destination=[lat,lng], modes='car', units='metric')

Without having sight of your dataset, file, one can nonetheless deduce or expect the following:

  1. Your antpoint and basepoint must be a two-item list (or tuple).
    For instance, your antpoint ought to have a coordinate like [40.7041029, -73.98706]
    See the radar-python manual

  2. line 11 and 13 in your code
    file['AntGeo'] = Sourced[['Ant_lat', 'Ant_long']].apply(','.join, axis=1)

    file['BaseGeo'] = Sourced[['Base_lat', 'Base_long']].apply(','.join, axis=1)

CodePudding user response:

Your error is occuring at this part:

Distance = radar.route.distance(Starts, End, modes='transit')
(origin_lat, origin_lng) = origin

First of all check the amount of variables that "origin" delivers to you, it's mismatched with the expectation I guess.

  • Related