DA-EPOCH-R (ajuste de dosis de EPOCH-R)

Fundamento

DA-EPOCH-R es el ajuste de dosis (DA) del EPOCH-R. Se basa en los nadires de ANC y Plaquetas del ciclo previo de EPOCH-R que se obtienen realizando dos hemogramas cada semana durante el ciclo de quimioterapia. Para calcular la dosis inicial de EPOCH, realícelo en esta direccion: EPOCH-R, código fuente.

Cuando el nadir de ANC >= 500 /uL, se deben incrementar las dosis de Doxorrubicina / Etopósido en un 20% con respecto al ciclo previo. Si el nadir es <500/uL, las dosis permanecen iguales. No se modifica la dosis de Ciclofosfamida por este motivo.

Cuando el nadir de Plaquetas <25k /uL, se disminuye la dosis de Ciclofosfamida en 20% con respecto a la dosis anterior. No se modifica la dosis de Etopósido ni de Doxorrubicina por este motivo.

La dosis de Vincristina y de Rituximab (si aplica), no se modifican con base a estos parámetros hematológicos. 

Tomado del NEJM

Explicación del programa

Debe suministrar la dosis absoluta en miligramos (o microgramos para Vincristina) de los diferentes agentes por día del ciclo anterior. De igual forma, debe entrar el nadir de ANC y plaquetas. El programa calcula la nueva dosis basada en el algoritmo anterior, y genera el protocolo.



CÓDIGO FUENTE

def f_numero_ampollas (Presentacion, DosisTotal, NumeroDeAplicacionesCiclo):
    # NTAA = numerototaldeampollasrequerida
    NTAA = float (DosisTotal/Presentacion)
    if int(NTAA) != NTAA:
        NTAA = int(NTAA)+1
    NTAA = NTAA * NumeroDeAplicacionesCiclo
    return NTAA

def f_protocolo_droga_ABSOLUTO (Droga1, DiaAdministracion1, ViaAdministracion1, Posologia1, Unidades1, Dosis1, PorcentajeDosis1, NumeroDeAplicacionesCiclo1, Presentacion1, Comentario1):
    DosisTotal1 = Dosis1
    NumeroDeAmpollasDia = float(f_numero_ampollas (Presentacion1, DosisTotal1, 1))
    NumeroDeAmpollasCiclo1 = NumeroDeAmpollasDia * NumeroDeAplicacionesCiclo1
    StrDroga1 = Droga1 + " " + Posologia1 + " " + str(Presentacion1)+ " " + Unidades1 + " "
    StrDroga1 = StrDroga1 + "# " + str(int(NumeroDeAmpollasCiclo1)) + " " + Posologia1 +  ": " + str(DosisTotal1) + " " + str(Unidades1) + " " + " "
    StrDroga1 = StrDroga1 + ViaAdministracion1
    print StrDroga1
    print Comentario1


Ritux = float(raw_input("Dosis de Rituximab/dia (mg)?>>"))
Etop = float(raw_input("Dosis de Etoposido/dia (mg)?>>"))
Doxo = float(raw_input("Dosis de Doxorrubicina/dia (mg)?>>"))
Vincr = float(raw_input("Dosis de Vincrisinta/dia (microgramos)?>>"))
Ciclo = float(raw_input("Dosis de Ciclofosfamida/dia (mg)?>>"))
Pred = float(raw_input("Dosis de Prednisona/dia (mg)?>>"))
NadirANC = float(raw_input("Nadir de ANC (/uL)?>>"))
NadirPlt = float(raw_input("Dosis de Plaquetas/dia (k/uL)?>>"))
print

if NadirANC >500:
 Ciclo = Ciclo * 1.2
  Doxo = Doxo * 1.2
  Etop = Etop * 1.2

if NadirPlt < 25:
  Ciclo = Ciclo * 0.8


print "Rituximab + EPOCH"
# Rituximab + EPOCH
f_protocolo_droga_ABSOLUTO("Dexametasona", "5", "Intravenoso", "ampollas", "miligramos", 20, 100, 5, 4, "Premedicacion antiemetica - intravenoso, dias 1, 2, 3, 4 y 5")
f_protocolo_droga_ABSOLUTO("Ondansetron", "5", "Intravenoso", "ampollas", "miligramos", 8, 100, 5, 8, "Premedicacion antiemetica, intravenoso, dias 1, 2, 3, 4 y 5")
f_protocolo_droga_ABSOLUTO("Rituximab", "1", "Intravenoso", "ampollas" , "miligramos", Ritux, 100, 1, 100, "Administrar intravenoso en forma ascendente, dias 1 (premedicar con acetaminofen 1000 mg via oral y difenhidramina 50 mg via oral 30 minutos antes del Rituximab)")
f_protocolo_droga_ABSOLUTO("Etoposido", "4", "Intravenoso", "ampollas" , "miligramos", Etop, 100, 4, 100, "Administrar intravenoso infusion de 24 horas, cada dia, dias 1, 2, 3, y 4")
f_protocolo_droga_ABSOLUTO("Doxorrubicina", "4", "Intravenoso", "ampollas" , "miligramos", Doxo, 100, 4, 10, "Administrar intravenoso infusion de 24 horas, cada dia, dias 1, 2, 3, y 4")
f_protocolo_droga_ABSOLUTO("Vincristina", "4", "Intravenoso", "ampollas" , "microgramos", Vincr, 100, 4, 1000, "Administrar intravenoso infusion de 24 horas, cada dia, dias 1, 2, 3, y 4")
print "NOTA: 1000 microgramos son 1 mg."
print "Instrucciones para la infusion continua: disolver el etoposido, doxorrubicina y vincristina en la misma bolsa de Solucion Salina 0.9%, 500 mL (1000 mL si dosis de Etoposido >150mg/dia) para la infusion continua cada dia, dias 1, 2, 3, 4"
f_protocolo_droga_ABSOLUTO("Ciclofosfamida", "1", "Intravenoso", "ampollas" , "miligramos", Ciclo, 100, 4, 500, "Administrar intravenoso infusion de 2 horas, dia 5")
f_protocolo_droga_ABSOLUTO("Pegfilgrastim", "1", "Subcutaneo", "ampollas", "miligramos", 6, 100, 1, 6, "Administrar 6 miligramos subcutaneos dia 6 - (profilaxis para neutropenia febril).")
f_protocolo_droga_ABSOLUTO("Prednisona", "5", "Via oral", "Tabletas" , "miligramos", Pred, 100, 5, 50, "Tomar via oral cada dia, dias 1, 2, 3, 4, y 5 (dividir en 2 tomas por dia)")
print
print
print "Recuerde que para practicar DA-EPOCH hay que realizar hemograma 2 veces por semana, y evaluar el nadir de recuento de neutrofilos (ANC) y de recuento de plaquetas."

Comentarios