La clave para el análisis exitoso de los reclamos de atención médica es tener una comprensión detallada de la estructura y el significado de los datos. Sin embargo, los datos de reclamos a menudo son difíciles de entender, están mal documentados e incluso se tratan como un secreto de la industria. He estado trabajando con datos de reclamos de atención médica durante ocho años, y esta publicación proporcionará una introducción al análisis de datos con reclamos de atención médica. Ilustraré los ejemplos con código en Python, pero estos principios se aplican a todos los lenguajes de programación. Cubriré información básica sobre el formato y la estructura de los datos de reclamos de atención médica, así como las dificultades comunes en la lectura de datos de reclamos y limpieza de datos.
De rawpixel
Introducción a los datos de reclamos de atención médica
Notarás rápidamente que la mayor parte de este artículo es texto y que solo hay algunos ejemplos de codificación.
Conocimiento de la industria es lo que separa un resumen de datos simple de análisis perspicaces y procesables.
No puedo enfatizar lo suficiente la importancia del conocimiento del contenido para el análisis de atención médica en particular. Por lo tanto, me voy a centrar en este artículo en algunos aspectos clave e inusuales de los datos que he notado al capacitar a muchos programadores nuevos en el cuidado de la salud y proporcionaré algunos ejemplos.
Si usted es nuevo en la atención médica, es importante investigar un poco sobre cómo funciona el seguro de salud antes de analizar los datos en sí. El sistema de salud en los Estados Unidos es complicado, como lo sabe cualquiera que haya sido paciente y haya tratado con su compañía de seguros.
Para comprender los reclamos de atención médica, un buen lugar para comenzar es con los datos de reclamos de Medicare. El gobierno de los Estados Unidos pone a disposición muchos recursos para conocer los datos, y los datos de reclamos de atención médica generalmente están estructurados de manera similar en todos los pagadores. ResDAC es un depósito central de información sobre datos de reclamos de Medicare y contiene todo, desde presentaciones introductorias hasta diccionarios de datos y guías sobre cómo solicitar datos.
Estructura de datos de reclamos
Los recursos en ResDAC también pueden ayudarlo a comprender cómo se estructuran los datos de reclamos. Para muchos pagadores, los diferentes tipos de servicios se facturan en diferentes formatos y se almacenan en diferentes archivos. Si un paciente es tratado en el hospital, las facturas que el hospital envía a la aseguradora para su estadía en el hospital pueden estar en un archivo separado, luego las facturas que el médico envía a la aseguradora por el paciente mientras los vio en el mismo hospital. Aunque el paciente experimenta la hospitalización como un "evento", cada entidad involucrada presenta su propia factura por separado a la compañía de seguros. Este es un punto confuso para la mayoría de las personas al principio, pero tiene sentido una vez que comprenda el seguro de salud. Si diferentes servicios para el mismo paciente se dividen en archivos, por supuesto, necesita encontrar el identificador único del paciente que le permitirá asociarlos.
Lectura de datos de reclamos
Para leer los datos de reclamos de atención médica en su sistema de elección, puede estar mirando una cantidad desconocida de archivos y / o una cantidad desconocida de columnas. Los datos a menudo se dividen en archivos separados debido a restricciones de tamaño en el servidor de almacenamiento, pero es posible que desee combinar todos los datos para trabajar en sus propios sistemas. Para solucionar este problema, debe verificar los archivos en el directorio y apilarlos si es necesario.
En algunos casos, el formato de datos puede cambiar con el tiempo. Algunos pagadores enviarán solo los campos necesarios en los datos; por ejemplo, si el reclamo tiene 25 códigos de diagnóstico posibles pero solo se usan 15 en el corte de datos, los datos que reciba solo tendrán esas 15 columnas. Configurar su canalización para manejar dinámicamente estos cambios lo hará mucho más eficiente y le ahorrará tiempo de depuración más adelante. Aquí hay una muestra de cómo verificar las longitudes de columna y formatear el archivo en la lectura.
Datos de limpieza
Al igual que con cualquier análisis de datos, la limpieza de los datos es crucial para obtener buenos resultados y ocupa aproximadamente el 80% del trabajo. Esta publicación asume que ya conoce los conceptos básicos de la limpieza de datos en Python.
Un primer problema simple para resolver es eliminar los caracteres inusuales que afectan los tipos de datos. Esto a veces se puede solucionar configurando sus tipos de datos al leer el archivo, pero esto no siempre es suficiente. Por ejemplo, algunos reclamos pueden estar formateados con caracteres especiales como signos de dólar y comas y pueden bloquear su código. Las expresiones regulares son tu mejor amigo en este escenario, aunque puede ser difícil trabajar con ellas. Aquí hay un ejemplo simple.
En los Estados Unidos, se utilizan varios sistemas de codificación diferentes para documentar los procedimientos y diagnósticos asociados con los servicios de atención médica. Puede encontrar una introducción a los diferentes conjuntos de códigos en este sitio web gubernamental. Al mirar un reclamo de atención médica sin procesar (sin procesar), los campos de procedimientos y diagnósticos serán códigos alfanuméricos; por ejemplo, puede ver un diagnóstico como J03.01. Para comprender el diagnóstico, puede ser útil agregar archivos de referencia que mapeen los códigos simples a descripciones de lo que significan los códigos, ya sea combinando descripciones o creando una tabla de referencia para una base de datos relacional. Algunos recursos tienen API, ya que las definiciones de código pueden cambiar y cambian con el tiempo. Como advertencia, siempre tómese el tiempo para formatear sus tipos de datos y verifique si hay cero problemas iniciales. Por ejemplo, un sistema de codificación de procedimientos de atención médica siempre tiene 5 dígitos alfanuméricos, pero puede comenzar con un 0 inicial; esto puede causar problemas fácilmente en su análisis.
Debido a la gran cantidad de códigos en un sistema de codificación dado, los archivos de referencia no siempre son un conjunto simple de cada código y su descripción. Puede ser muy útil agrupar códigos para obtener una descripción resumida. Por ejemplo, es posible que no necesite saber para los fines de su análisis que J03.01 es amigdalitis estreptocócica recurrente aguda y J05.10 es epiglotitis aguda sin obstrucción; puede ser suficiente saber que ambos son tipos de infecciones agudas de las vías respiratorias superiores. Algunos conjuntos de códigos se crean convenientemente para que cada dígito y su orden tengan un significado claro, por lo que su agregación es muy simple. Sin embargo, algunos conjuntos de códigos no tienen esta característica útil, y dichos archivos de referencia se pueden agregar al usar una combinación de rango. Esto se hace fácilmente en SQL, por lo que este ejemplo usa la biblioteca sqlite.
Para obtener más información, consulte https://docs.python.org/3/library/sqlite3.html
Hay muchos tipos de servicios / organizaciones en un tipo determinado de archivo de datos de reclamos. En un archivo que contiene la facturación del hospital para pacientes hospitalizados, puede haber facturas de hospitales agudos (para el tratamiento de eventos agudos como una cirugía o lesión mayor), hospitales de atención a largo plazo (para el tratamiento de eventos agudos que requieren un tiempo mucho más largo para el tratamiento / recuperación ), hospitales psiquiátricos, hospitales oncológicos, hospitales de acceso crítico … Comprender cómo identificar estos diferentes tipos de instalaciones o servicios mejorará en gran medida cualquier análisis. Por ejemplo, si su objetivo es calcular las tasas de reingreso, eso generalmente solo significa hospitales de cuidados agudos; el uso de todo el archivo de facturación del hospital para pacientes internados le daría una estimación inflada.
Este ejemplo solo muestra algunos tipos de hospitales. Para obtener más información, consulte https://www.resdac.org/sites/resdac.umn.edu/files/Provider%20Number%20Table.txt
Resumen de datos
Si los datos de las reclamaciones se distribuyen en varios archivos, puede ser útil combinarlos cronológicamente para comprender la trayectoria de atención completa de cada paciente. Este tipo de formato se denomina comúnmente "viñeta" y puede ser invaluable para la revisión clínica de los datos. La creación de una viñeta requiere una comprensión matizada de los datos en cada archivo. Por lo general, primero proceso los archivos en una estructura similar, luego los apilo y los ordeno.
Envolver
Este artículo ha destacado algunos aspectos clave del trabajo con datos de reclamos de atención médica en Python. ¡Espero que te haya resultado útil! En el futuro, ampliaré esto con más ejemplos de codificación y contenido centrado en los datos de Medicare.
Si usted es un experto en datos y está buscando un nuevo puesto, ¡lo estamos contratando! Consulte nuestra publicación de ciencia de datos aquí y otras publicaciones de desarrolladores aquí.
Para obtener más información sobre SimplyVital Health, síganos en Facebook, Twitter y LinkedIn.
De rawpixel