import streamlit as st # Estilo y diseño general st.set_page_config(page_title="Predicción de Diabetes en Mujeres Embarazadas", layout="centered") # Título de la aplicación st.title("🩺 Predicción de Diabetes en Mujeres Embarazadas") # Descripción st.markdown(""" Bienvenida al sistema de predicción de diabetes basado en inteligencia artificial. Por favor, completa el siguiente formulario con tus datos personales y hábitos de vida. Una vez completado, obtendrás una predicción basada en nuestro modelo de aprendizaje automático. """) # Línea divisoria estilizada st.markdown("---") # Formulario para capturar los datos del usuario with st.form(key="diabetes_form"): st.subheader("📋 Información General") age = st.number_input("🗓️ Edad:", min_value=0, max_value=120, value=30, help="Ingresa tu edad actual.") bmi = st.number_input("⚖️ Índice de Masa Corporal (BMI):", min_value=0.0, max_value=100.0, value=25.0, step=0.1, help="Relación peso/talla al cuadrado (Kg/m²).") blood_pressure = st.number_input("💓 Presión arterial (mmHg):", min_value=0, max_value=200, value=70, help="Ingresa tu presión arterial promedio.") cholesterol_levels = st.number_input("🩸 Nivel de colesterol (mg/dL):", min_value=0, max_value=300, value=120) glucose = st.number_input("🍬 Nivel de glucosa (mg/dL):", min_value=0, max_value=300, value=120) waist_circumference = st.number_input("📏 Circunferencia de cintura (cm):", min_value=0, max_value=200, value=80) st.markdown("### Antecedentes y Estilo de Vida") has_family_history_radio = st.radio("👨‍👩‍👧 Antecedentes familiares de diabetes:", ("Sí", "No")) smoking = st.radio("🚬 ¿Fumas?", ("Sí", "No")) physical_activity = st.radio("🏃‍♀️ Nivel de actividad física:", ("Alto", "Medio", "Bajo")) dietary_habits = st.radio("🍎 Hábitos alimenticios:", ("Saludables", "Medianamente Saludables", "No Saludables")) alcohol_consumption = st.radio("🍷 Nivel de consumo de alcohol:", ("Alto", "Medio", "Bajo", "Ninguno")) cystic_fibrosis_diagnosis = st.radio("⚕️ ¿Diagnóstico de fibrosis quística (FQ)?", ("Sí", "No")) st.markdown("### Información sobre el Embarazo") tipo_embarazo = st.radio("🤰 Tipo de embarazo:", ("Normal", "Con complicaciones")) peso_ganado = st.number_input("📈 Peso ganado durante el embarazo (kg):", min_value=0, max_value=100, value=10, help="Incluye solo el peso adicional durante el embarazo.") diabetes_gestacional = st.radio("🔬 ¿Diagnóstico previo de diabetes gestacional?", ("Sí", "No")) # Botón para enviar el formulario submit_button = st.form_submit_button(label="Enviar") # Mensaje al enviar el formulario if submit_button: st.success("✅ ¡Formulario enviado correctamente!") st.markdown("Los datos han sido registrados. En el siguiente paso se calculará la probabilidad basada en nuestro modelo de predicción.") # Mostrar datos ingresados st.write("### Resumen de tus datos:") st.write(f"- **Edad:** {age} años") st.write(f"- **Índice de Masa Corporal (BMI):** {bmi}") st.write(f"- **Presión arterial:** {blood_pressure} mmHg") st.write(f"- **Nivel de colesterol:** {cholesterol_levels} mg/dL") st.write(f"- **Nivel de glucosa:** {glucose} mg/dL") st.write(f"- **Circunferencia de cintura:** {waist_circumference} cm") st.write(f"- **Antecedentes familiares de diabetes:** {has_family_history_radio}") st.write(f"- **Fumas:** {smoking}") st.write(f"- **Nivel de actividad física:** {physical_activity}") st.write(f"- **Hábitos alimenticios:** {dietary_habits}") st.write(f"- **Consumo de alcohol:** {alcohol_consumption}") st.write(f"- **Diagnóstico de fibrosis quística:** {cystic_fibrosis_diagnosis}") st.write(f"- **Tipo de embarazo:** {tipo_embarazo}") st.write(f"- **Peso ganado durante el embarazo:** {peso_ganado} kg") st.write(f"- **Diagnóstico previo de diabetes gestacional:** {diabetes_gestacional}")