6 votos

¿Apropiación de la declaración de retorno falsa?

enter image description here Quería que el siguiente código mostrara iconos verdes cuando el valor es < 6.0 y nada cuando es >= 6.0. Pero devuelve iconos rojos para valores >= 6.0 como en la captura de pantalla adjunta. ¿Cuál debería ser la sentencia Else para esto?

import folium
import pandas

data=pandas.read_csv("EQ_CSV.TXT")
lat = list(data["LAT"])
lon = list(data["LON"])
elev = list(data["MAG"])

fga = folium.FeatureGroup(name="Magnitude below 6.0")
def color_producer(xyz):
    if xyz < 6.0:
        return 'green'
    else:
        return False

map = folium.Map(location=[24.01, 92.01], zoom_start=6, tiles="Mapbox Bright")

for lt, ln, el in zip(lat, lon, elev):
    fga.add_child(folium.Marker(location=[lt, ln], popup= "Magnitude of "+str(el),
    icon=folium.Icon(color=color_producer(el))))

1 votos

Quizás xyz no se lee como un flotador cuando se ejecuta la función? Pruebe a sustituir color=color_producer(el) con color=color_producer(float(el)) en su for bucle.

0 votos

Gracias pero no me ha funcionado. Sin embargo, si pongo else: return 'blue' entonces está mostrando el icono azul para los valores por encima de 6,0. Pero todo lo que quería era devolver ninguno cuando la condición no es verdadera.

1 votos

¿Qué tal si simplemente se quita el else ¿la afirmación es totalmente?

3voto

einpoklum Puntos 116

El comentario de neighdough me ha servido. Tuve que filtrar el conjunto de datos utilizando la declaración data = data[data['MAG'] < 6.0] y cada vez que quería otro filtrado, por ejemplo if Magnitude > 7.0: return 'red' entonces, tuve que leer el archivo de texto de nuevo y luego utilizar la misma declaración de filtrado de tipo de nuevo. Como,

data=pandas.read_csv("EQ_CSV.TXT")
data = data[data['MAG'] > 7.0]

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X