2009-01-12 6 views
9

Estoy escribiendo una aplicación que permite que un usuario diabético ingrese sus lecturas de "glucosa en sangre", y luego las traza en un gráfico con el 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:¿Algoritmo predictivo de "glucosa en sangre"?

a) rellene los huecos en el gráfico entre las lecturas (las curvas serían más realistas que las líneas espasmódicas) y permita una mayor precisión "nivel de glucosa en la sangre" media diaria

b) más o menos predecir lo que sucederá en el futuro (si el usuario no come nada que afectará a sus niveles en la sangre)

soy muy malo 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 adaptado para este problema específico (por ejemplo: donde alguien lo ha comparado con datos reales de diabéticos)

Descargo de responsabilidad: Estoy muy consciente de que cualquiera de estos algoritmos variaría enormemente dependiendo en el usuario. Solo estoy buscando mejorar en líneas angulosas rectas. Independientemente de los diabéticos, existe un límite en la tasa que los niveles de azúcar en la sangre pueden aumentar y disminuir.

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

Respuesta

43

El comportamiento del azúcar en la sangre es muy complicado. Se ve afectada por

  • azúcar en la sangre actual (complicado por la posible presencia de cetonas si el paciente es hiperglucémico)
  • reciente alimentos a varias horas, dependiendo del tipo y la cantidad de
  • reciente de insulina de acción rápida (con la variedad y perfiles de reacción que dependen de los pacientes entre 45 minutos y dos horas de duración. Ah, y mecanismo de entrega)
  • insulina de acción prolongada hacia fuera más allá de 12 horas (de nuevo paciente y variedad dependiente)
  • niveles de actividad
  • niveles de estrés
  • enfermedad
  • tasa basal de insulina si el paciente lleva una bomba
  • hasta la saciedad

problema muy dura. Cualquier heurística --- cualquier heurística --- eliges sería muy engañoso. Así respuesta corta:

No lo hagas.


Esto viene, en parte, de haber comparado registro de glucosa continua de 24 horas de un diabético con los ~ 10 pinchazos en los dedos tomadas durante el mismo tiempo. Es decir. mi sugerencia es impulsada por datos.


Editar: Evidentemente no me he explicado con claridad.

Ni siquiera se puede acercar.

Nada de lo que puede hacer con los datos de pinchado con el dedo 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 de partículas experimental. 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 días pinchazos con los dedos, el ejercicio, los alimentos y la insulina.

Si pudiera obtener datos de cada quince minutos, le diría que continúe y utilice una spline. No será peligrosamente engañoso. Pero, si tiene 6-10 mediciones a lo largo del día, sabe nada.


Buenas noticias: el control 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 hacer (resultados del sondeo muy poco científico) 4-6 + glucosa pone a prueba al día como una cuestión de rutina, y varios otros adicionales en el 1- 2 horas después de una excursión inesperada (obtienen síntomas físicos que les permiten detectar excursiones severas).

Esto sirve para dar al paciente una idea aproximada de cómo se comportan en el control de sus niveles de glucosa, pero también van a un laboratorio para extraer una Hemoglobina A1C cada trimestre (más o menos). El resultado de A1C depende principalmente de su nivel de glucosa en sangre promedio.

He hablado con personas que registraron en un 80-110 (números bastante favorables) cuatro veces al día durante meses, y obtuve un A1C sugiriendo un promedio superior a 150 (no deseable en absoluto). Presumiblemente iban a altas horas de la noche. Y he escuchado historias similares de personas que probablemente estén bajando, muy bajas, mientras duermen.

La lección es:

pinchazo en el dedo lecturas tienen su lugar, pero no intentan extrapolar a veces no muy bien muestreados.

+0

Sabía que alguien diría eso ;-) No espero nada como el 100% de precisión aquí. Cualquier mejora sobre las líneas angulares sería bienvenida. – username

+0

Fwiw, "entiendo" que está diciendo que no hay una manera fácil de mejorar las líneas angulares. Lo que estoy diciendo es * cualquier * mejora es mejor que ninguna mejora, y tal vez alguien más ya haya hecho el trabajo. – username

+3

No, no lo es. Coloque los puntos en el gráfico y ** no ** los conecte. Esa es la ** única ** forma correcta de mostrar los datos. – dmckee

1

bien, vas a buscar una curva ajustada. La cosa con eso es que para n puntos hay polinomios ajustados a la orden ... n-1, creo. Ha sido un tiempo. Yep. by golly, I'm right. Lo común cuando tienes muchos puntos y no quieres una función complicada (que no) es usar un least-squares approximation.

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.

2

Si desea hacer un ajuste recto de los datos para que las cosas sean más fáciles de ver, entonces algo como lo que Charlie Martin recomienda probablemente funcione bien.Sin embargo, como se señala en dmckee, esta información realmente no significaría nada.

Lo que está tratando de hacer es en realidad más en línea con pharmacokenetics que es un estudio científico completo en sí mismo. En este caso, ni siquiera estoy seguro de que se aplique por completo, excepto en el caso de Diabetes tipo I, ya que la mayoría de lo que sé sobre pharamcokenetics solo aplica estudios de medicamentos, pero si algo está siendo producido por el cuerpo, es probable que mires completamente 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 de "pharmacokienetics", pero debido a la naturaleza del tema son muy pesadas en matemáticas y supone que tiene una comprensión de la química y la biología también.

1

Esto es más probable que no va a funcionar, pero Artificial Neural Networks puede, y lo repito puede ser capaz de sacar 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 buena razón 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 una afición ver si incluso se acerca, como "oh limpio tengo una red neuronal con una precisión de X cantidad". De nuevo, debo recalcar, ¡no lo use en ningún tipo de situaciones de producción ni en ningún otro lugar donde pueda herir o matar a alguien!