Pregunta

Estoy escribiendo una aplicación que permite que un usuario diabético ingrese su "glucosa en sangre" lecturas, y luego las grafica en un gráfico a lo largo del tiempo de izquierda a derecha. Dado que las lecturas de sangre se realizarán solo varias veces al día, un algoritmo sería útil para:

a) llene los espacios en el gráfico entre lecturas (las curvas serían más realistas que las líneas desiguales) y permita un "nivel de glucosa en sangre" más preciso promedio diario

b) pronostique aproximadamente lo que sucederá en el futuro (si el usuario no come nada que afecte sus niveles en sangre)

Soy un asco en el cálculo. ¿Espero que alguien aquí conozca una biblioteca para estas cosas? Espero que alguien sepa de un algoritmo que ya se ha diseñado para este problema específico (por ejemplo, donde alguien lo ha comparado con datos reales de diabéticos)

Descargo de responsabilidad: soy muy consciente de que cualquier algoritmo variará enormemente dependiendo del usuario. Solo estoy buscando mejorar en líneas angulares rectas. Independientemente del diabético, hay un límite en la tasa de azúcar en la sangre que puede subir y bajar.

Estoy usando Javascript, pero como son solo matemáticas, podría portarlo desde C, Java o lo que sea.

¿Fue útil?

Solución

El comportamiento del azúcar en la sangre es muy complicado. Está afectado por

  • Azúcar en sangre actual (complicado por la posible presencia de cetonas si el paciente tiene hiperglucemia)
  • comida reciente a varias horas dependiendo del tipo y la cantidad
  • insulina reciente de acción rápida (con variedad y perfiles de reacción dependientes del paciente entre 45 minutos y dos horas de duración. Ah, y mecanismo de administración)
  • insulina de acción prolongada pasada las 12 horas (nuevamente paciente y dependiente de la variedad)
  • niveles de actividad
  • niveles de estrés
  • enfermedad
  • tasa de insulina basal si el paciente usa una bomba
  • ad nauseum

Problema muy difícil. Cualquier heurística --- cualquier heurística --- que elija sería muy engañosa. Tan breve respuesta:

  

No lo hagas.


Esto proviene, en parte, de haber comparado el registro continuo de glucosa de 24 horas de un diabético con los ~ 10 pinchazos en los dedos tomados durante el mismo tiempo. Es decir. mi sugerencia se basa en datos.


Editar: Evidentemente, no me puse en claro.

  

Ni siquiera puedes acercarte.

Nada que pueda hacer con los datos de punción digital puede ser remotamente confiable.

Conectar los puntos con cualquier línea (incluso segmentos rectos) es simplemente incorrecto . No refleja la realidad. Ni siquiera un poquito.

Soy un físico experimental de partículas. Los conjuntos de datos complicados son lo que hago. Hay un diabético en mi vida (¿lo adivinaste?). Esto me importa.

Pero he visto los registros de datos de alta frecuencia, lado a lado con un registro de los pinchazos de los días, el ejercicio, la comida y la insulina.

Si pudiera obtener datos de cada quince minutos, diría que siga adelante y use una spline. No será peligrosamente engañoso. Pero, si tiene 6-10 mediciones durante el día, no sabe nada .


Buenas noticias: el monitoreo continuo está bajando de precio. Está fuera del laboratorio y está disponible con algunas bombas incluso ahora.


Para aquellos que no están familiarizados con esto: los pacientes diabéticos que cumplen con los requisitos (resultados de encuestas extremadamente poco científicas) 4-6 + pruebas de glucosa al día de forma habitual, y varias más en las 1-2 horas posteriores a cualquier excursión inesperada (tienen síntomas físicos que les permiten detectar excursiones severas).

Esto sirve para dar al paciente una idea aproximada de cómo le está yendo en el control de sus niveles de glucosa, pero también va a un laboratorio para obtener una extracción de hemoglobina A1C cada trimestre (más o menos). El resultado de A1C depende principalmente de su glucosa en sangre promedio.

He hablado con personas que registraron un 80-110 (números bastante favorables) cuatro veces al día durante meses, y obtuvieron un A1C que sugiere un promedio superior a 150 (nada deseable). Presumiblemente iban alto en la noche. Y he escuchado historias similares de personas a las que probablemente estamos bajando, muy baja, mientras dormimos.

La lección es:

  

Las lecturas de punción digital tienen su lugar, pero no intentes extrapolarlas a tiempos que no estén bien muestreados.

Otros consejos

Si desea hacer un ajuste directo de los datos para hacer que las cosas sean más fáciles de ver, entonces algo como lo que Charlie Martin recomendado probablemente funcionaría bien. Sin embargo, como lo señaló dmckee estos datos realmente no significarían nada.

Lo que está tratando de hacer es en realidad más en línea con farmacokenetica que es un todo Estudio científico en sí mismo. En este caso, ni siquiera estoy seguro de que se aplique por completo, excepto en el caso de la diabetes tipo I, ya que la mayor parte de lo que sé sobre la facocogenética solo se aplica a los estudios de drogas, pero si el cuerpo produce algo, es probable que esté observando por completo Diferentes tipos de análisis. Si está interesado en el tema, hay bastantes vistas previas de libros en Google Books si realiza una búsqueda para " pharmacokienetics " pero debido a la naturaleza del tema, son muy pesados ??en matemáticas y suponen que usted también comprende la química y la biología.

bien, vas a buscar alguna curva ajustada. Lo que pasa es que para n puntos hay polinomios ajustados hasta el orden ... n-1, creo. Ha sido un tiempo. Sí. por Dios, estoy en lo cierto. Lo común cuando tienes muchos puntos y no quieres una función complicada (que no tienes) es usar un aproximación de mínimos cuadrados .

probablemente lo mejor es buscar una rutina enlatada que pueda usar; Estos existen en la mayoría de los paquetes de estadísticas. Danos un poco más de detalles sobre el entorno que deseas y podríamos señalarte más de cerca a algo adecuado.

Lo más probable es que esto no funcione, pero las Redes Neuronales Artificiales pueden, y repito puede ser capaz de obtener algo de un buen conjunto de datos. Por bueno, me refiero a semanas o meses de grabación continua, e incluso entonces no confiaría en el conjunto de datos a menos que tuviera muy buenas razones para hacerlo. Tampoco creo que obtenga datos predictivos, pero puede depender de cómo lo implemente. En general, si hicieras esto, parecería más un pasatiempo ver si incluso se acerca, como "oh, claro, tengo una red neuronal con una precisión de X". Nuevamente, debo enfatizar, ¡no uses esto en ningún tipo de situaciones de producción o en cualquier lugar donde pueda lastimar o matar a alguien!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top