TransWikia.com

Validar un input a traves de una columna de un dataframe en Python

Stack Overflow en español Asked by RaqS on August 30, 2020

Estoy manejando una dataframe con datos de bici (nº de estacionamiento, calle, latitud y longitud, anclajes, etc). Mi objetivo es crear una función que por un lado a través de un input le solicite al usuario por pantalla a el número de estacionamiento donde se encuentra y a donde quiere ir, seguidamente quiero verificar que este número se encuentre en la columna ids del dataframe que estoy manejando.
Una vez comprobado el siguiente nivel sería guardar en dos variables, la longitud y la latitud del número de estacionamiento. Esto quiero realizarlo tanto en el origen como en el destino.

El problema que esto teniendo es en el bucle que no entra correctamente entiendo que puede deberse a una indentación o algo por el estilo, asi mismo cuando genero un else también tengo problemas ya que lo imprime.

result_origen= ""
result_destino = ""
origen = int(input("Indica el nº de la estación donde te encuentras: "))
destino = int(input("Indica el nº de la estación a donde vas: "))
for i, row in stations_2019.iterrows(): #tomo como referencia el dataframe de estaciones 2019 para obtener latitud y longitud
    if i == origen:
      result_origen = row[10], row[11]
    else:
      print("No existe esa estación")

for j, row in stations_2019.iterrows():   
      if j == destino:
        result_destino = row[10], row[11]
      else:
      print("No existe esa estación")

print(result_origen)
print(result_destino)

One Answer

Para tu caso, podes hacerlo sin usar una for loop con iloc indexing:

result_origen_lat, result_origen_lon =  stations_2019.iloc[stations_2019.index == origen, [10, 11]].tolist()

result_destino_lat, result_destino_lon =  stations_2019.iloc[stations_2019.index == destino, [10, 11]].tolist()

Answered by YOLO on August 30, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP