es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Desajuste de longitud en folium?

Estoy trabajando en la codificación de un mapa en folium y me aparece este error. Soy nuevo en esto y sinceramente no tengo idea de cómo solucionarlo.

import folium

geojson_map = 'https://raw.githubusercontent.com/dirkkoolmees/maps-import-export-of-fossil-fuels-/master/custom.geo.json'

world_map = folium.Map(location=[0,0], zoom_start=1.5, tiles='CartoDB positron', min_zoom=1, max_zoom=6)

folium.Choropleth(
    geo_data=geojson_map,
    name="chloropleth",
    data=df_clean,
    columns=[df.index, 'value'],
    key_on='feature.properties.name_sort',
    fill_color='Reds',
    fill_opacity=0.9,
    line_opacity=0.2,
    legend_name='GDP'
).add_to(world_map)

world_map

Este es el error que recibo:

ValueError                                Traceback (most recent call last)
<ipython-input-31-b88f980d229d> in <module>()
     13     fill_color='Reds',
     14     fill_opacity=0.9,
---> 15     line_opacity=0.2,
     16     #legend_name='GDP'
     17     ).add_to(world_map)

1 frames
/usr/local/lib/python3.7/dist-packages/pandas/core/frame.py in set_index(self, keys, drop, append, inplace, verify_integrity)
   4597                 # ensure_index_from_sequences would not raise for append=False.
   4598                 raise ValueError(
-> 4599                     f"Length mismatch: Expected {len(self)} rows, "
   4600                     f"received array of length {len(arrays[-1])}"
   4601                 )

ValueError: Length mismatch: Expected 154 rows, received array of length 324

¿Alguien sabe cómo solucionar esto? ¡Gracias!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El error parece ser causado por una discrepancia en la longitud entre el número esperado de filas y la longitud real del array. Específicamente, parece que el número de filas en el marco de datos df_clean no coincide con el número de filas en el mapa geojson.

    Una posible solución es asegurarse de que el marco de datos df_clean tenga la misma longitud y orden de filas que el mapa geojson. Alternativamente, podría intentar usar un índice diferente para el marco de datos al llamar a columns, como df_clean['country'] si eso corresponde a los nombres de los países en el mapa geojson.

    También es posible que haya un problema con el archivo geojson en sí, por lo que verificar que el archivo esté correctamente formateado también puede ser útil para resolver este error.

Comments are closed.