# Establecer el directorio de trabajo
library(readxl)
library(summarytools)
DATA_SET <- read_excel("DATA SET 14-10-2025.xlsx") #cargue base de datos
print(dfSummary(DATA_SET), method = 'render')
| No | Variable | Stats / Values | Freqs (% of Valid) | Graph | Valid | Missing | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | ID [numeric] |
|
200 distinct values | 200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2 | CE_MUJER [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3 | CE_EDAD_18 [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4 | CE_DX_mama [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 5 | CE_TRAT [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 6 | CE_TRAT_2 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 7 | CE_libre_cancer [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 8 | CE_CJO [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 9 | CE_COM_mental [character] | 1. No |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 10 | CE_CAMA [character] | 1. No |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 11 | CE_PARTICIPACION [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 12 | CE_CONSENTIMIENTO [character] | 1. Si |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 13 | CE_COMPLETO [character] | 1. Complete |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 14 | qlq_c30_1 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 15 | qlq_c30_2 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 16 | qlq_c30_3 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17 | qlq_c30_4 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 18 | qlq_c30_5 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 19 | qlq_c30_6 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 20 | qlq_c30_7 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 21 | qlq_c30_8 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 22 | qlq_c30_9 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 23 | qlq_c30_10 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 24 | qlq_c30_11 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 25 | qlq_c30_12 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 26 | qlq_c30_13 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 27 | qlq_c30_14 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 28 | qlq_c30_15 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 29 | qlq_c30_16 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 30 | qlq_c30_17 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 31 | qlq_c30_18 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 32 | qlq_c30_19 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 33 | qlq_c30_20 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 34 | qlq_c30_21 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 35 | qlq_c30_22 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 36 | qlq_c30_23 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 37 | qlq_c30_24 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 38 | qlq_c30_25 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 39 | qlq_c30_26 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 40 | qlq_c30_27 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 41 | qlq_c30_28 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 42 | qlq_c30_29 [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 43 | qlq_c30_30 [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 44 | qlq_c30_31 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 45 | qlq_c30_32 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 46 | qlq_c30_33 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 47 | qlq_c30_34 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 48 | qlq_c30_35 [character] |
|
|
187 (93.5%) | 13 (6.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 49 | qlq_c30_36 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 50 | qlq_c30_37 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 51 | qlq_c30_38 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 52 | qlq_c30_39 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 53 | qlq_c30_40 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 54 | qlq_c30_41 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 55 | qlq_c30_42 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 56 | qlq_c30_43 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 57 | qlq_c30_44 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 58 | qlq_c30_45 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 59 | qlq_c30_46 [character] |
|
|
178 (89.0%) | 22 (11.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 60 | qlq_c30_47 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 61 | qlq_c30_48 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 62 | qlq_c30_49 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 63 | qlq_c30_50 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 64 | qlq_c30_51 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 65 | qlq_c30_52 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 66 | qlq_c30_53 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 67 | EDAD [numeric] |
|
44 distinct values | 200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 68 | ESTRATO [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 69 | AFILIACION_SALUD [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 70 | EDUCACION [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 71 | SIT_MARITAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 72 | OCUPACION [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 73 | FRACCION_OCUPACIONES [numeric] |
|
31 distinct values | 200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 74 | SATISFACCION_ATENCION_SALUD [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 75 | PERCEPCION_RELIGION [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 76 | PERCEPCION_ESPIRITUAL [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 77 | PERCEPCION_SOPORTE_SOCIAL [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 78 | COMPLETE_SOCIODEMOGRAFICO [character] | 1. Complete |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 79 | TIEMPO_SUPERVIVENCIA [numeric] |
|
23 distinct values | 200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 80 | EDAD_DX [numeric] |
|
43 distinct values | 200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 81 | LATERIALDAD_MAMA_DERECHO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 82 | LATERIALDAD_MAMA_IZQUIERDO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 83 | LATERIALDAD_MAMA_BILATERAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 84 | ESTADIFICACION_MAMA_NCCN [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 85 | TIPO_HISTOLOGICO_CIE_10 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 86 | CLASIFICACION_INMUNOHISTOQUIMICA_RE_POSITIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 87 | CLASIFICACION_INMUNOHISTOQUIMICA_RP_POSITIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 88 | CLASIFICACION_INMUNOHISTOQUIMICA_TRIPLE_NEGATIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 89 | CLASIFICACION_INMUNOHISTOQUIMICA_HER2_POSITIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 90 | CLASIFICACION_INMUNOHISTOQUIMICA_KI_67_POSITIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 91 | CLASIFICACION_INMUNOHISTOQUIMICA_OTRO [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 92 | CLASIFICACION_INMUNOHISTOQUIMICA_NO_REPORTA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 93 | TRAT_QUIMIOTERAPIA_NEOADYUVANTE [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 94 | TRAT_ANTIHER2 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 95 | TRAT_RADIOTERAPIA_NEOADYUVANTE [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 96 | TRAT_CIRUGIA_RADICAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 97 | TRAT_CIRUGIA_RADICAL_MODIFICADA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 98 | TRAT_CIRUGIA_CONSERVADORA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 99 | TRAT_VACIAMIENTO_GANGLIONAR [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 100 | TRAT_TRATAMIENTO_HORMONAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 101 | TRAT_QUIMIOTERAPIA_ADYUVANTE [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 102 | TRAT_RADIOTERAPIA_ADYUVANTE [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 103 | TRAT_CIRUGIA_RECONSTRUCTIVA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 104 | TRAT_OTRO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 105 | TRAT_NO_REPORTA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 106 | TIPO_T_SISTEMICO_NEOADYUVANTE_QUIMIOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 107 | TIPO_T_SISTEMICO_NEOADYUVANTE_ANTIHER2 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 108 | TIPO_T_SISTEMICO_NEOADYUVANTE_T.BLANCO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 109 | TIPO_T_SISTEMICO_NEOADYUVANTE_INMUNOTERAPIA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 110 | TIPO_T_SISTEMICO_NEOADYUVANTE_HORMONOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 111 | TIPO_T_SISTEMICO_NEOADYUVANTE_NO_REPORTA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 112 | TIPO_T_SISTEMICO_ADYUVANTE_QUIMIOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 113 | TIPO_T_SISTEMICO_ADYUVANTE_ANTIHER2 [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 114 | TIPO_T_SISTEMICO_ADYUVANTE_T.BLANCO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 115 | TIPO_T_SISTEMICO_ADYUVANTE_INMUNOTERAPIA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 116 | TIPO_T_SISTEMICO_ADYUVANTE_HORMONOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 117 | TIPO_T_SISTEMICO_ADYUVANTE_NO_REPORTA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 118 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIACION_TODO_SENO_CONVENCIONAL [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 119 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIACION_TODO_SENO_HIPOFRACCIONADA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 120 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIOT_IORT [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 121 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIOT_3D_CRT [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 122 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIOT_IMRT [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 123 | TIPO_RADIOTERAPIA_NEOADYUVANTE_BRAQUITERAPIA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 124 | TIPO_RADIOTERAPIA_NEOADYUVANTE_RADIACION_GANGLIOS [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 125 | TIPO_RADIOTERAPIA_NEOADYUVANTE_OTRO [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 126 | TIPO_RADIOTERAPIA_NEOADYUVANTE_NO_REPORTA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 127 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_TODO_SENO_CONVENCIONAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 128 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_TODO_SENO_HIPOFRACCIONADA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 129 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIOT_IORT [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 130 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIOT_3D_CRT [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 131 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIOT_IMRT [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 132 | TIPO_RADIOTERAPIA_ADYUVANTE_BRAQUITERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 133 | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_GANGLIOS [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 134 | TIPO_RADIOTERAPIA_ADYUVANTE_OTRO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 135 | TIPO_RADIOTERAPIA_ADYUVANTE_NO_REPORTA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 136 | TRAT_HORMONAL_COMPLETADO [character] |
|
|
157 (78.5%) | 43 (21.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 137 | TRAT_HORMONAL_ACTUAL [character] |
|
|
157 (78.5%) | 43 (21.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 138 | RECAIDA_CANCER_MAMA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 139 | CATEGORIA_RIESGO_HC [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 140 | TRAT_RECAIDA_QUIMIOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 141 | TRAT_RECAIDA_ANTI_HER2 [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 142 | TRAT_RECAIDA_T._BLANCO [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 143 | TRAT_RECAIDA_INMUNOTERAPIA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 144 | TRAT_RECAIDA_HORMONOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 145 | TRAT_RECAIDA_RADIOTERAPIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 146 | TRAT_RECAIDA_NO_REPORTA [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 147 | ATENCION_UA_CUIDADO_PALIATIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 148 | ATENCION_UA_PROGRAMA_LINFEDEMA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 149 | ATENCION_UA_PROGRAMA_FATIGA_REH_ONCOLOGICA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 150 | ATENCION_UA_PSICOONCOLOGIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 151 | ATENCION_UA_SEXOLOGIA_GINECOLOGIA_FUNCIONAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 152 | ATENCION_UA_NEUROLOGIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 153 | ATENCION_UA_TRABAJO_SOCIAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 154 | ATENCION_UA_NUTRICION [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 155 | ATENCION_UA_MEDICINA_OCUPACIONAL [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 156 | ATENCION_UA_MEDICINA_CIRUGIA_PLASTICA_RECONSTRUCTIVA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 157 | ATENCION_UA_MEDICINA_FISIATRIA_MEDICINA_FISICA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 158 | ATENCION_UA_OTRO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 159 | ATENCION_UA_NINGUNO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 160 | SEGUIMIENTO_SUPERVIVENCIA_UA_MEDICINA FAMILIAR [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 161 | SEGUIMIENTO_SUPERVIVENCIA_UA_ONCOLOGIA_CLINICA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 162 | SEGUIMIENTO_SUPERVIVENCIA_UA_CIRUGIA_MAMA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 163 | SEGUIMIENTO_SUPERVIVENCIA_UA_OTRO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 164 | SEGUIMIENTO_SUPERVIVENCIA_UA_NINGUNO [character] | 1. Unchecked |
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 165 | ANT_INFARTO_MIOCARDIO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 166 | ANT_FALLA_CARDIACA [character] |
|
|
199 (99.5%) | 1 (0.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 167 | ANT_FALLA_ENF_VASCULAR_PERIFERICA [character] |
|
|
199 (99.5%) | 1 (0.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 168 | ANT_FALLA_ENF_CEREBROVASCULAR [character] |
|
|
199 (99.5%) | 1 (0.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 169 | ANT_FALLA_ENF_DEMENCIA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 170 | ANT_FALLA_ENF_PULMONAR_OBSTRUCTIVA_CRONICA [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 171 | ANT_FALLA_ENF_TEJIDO_CONECTIVO [character] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 172 | ANT_FALLA_ULCERA_PEPTICA [character] |
|
|
199 (99.5%) | 1 (0.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 173 | ANT_FALLA_ENF_HEPATICA [character] |
|
|
198 (99.0%) | 2 (1.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 174 | ANT_FALLA_DIABETES_MELLITUS [character] |
|
|
197 (98.5%) | 3 (1.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 175 | ANT_FALLA_HEMIPLEJIA [character] |
|
|
199 (99.5%) | 1 (0.5%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 176 | ANT_ENF_RENAL_CRONICA [character] |
|
|
198 (99.0%) | 2 (1.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 177 | ANT_VIH [character] | 1. No |
|
198 (99.0%) | 2 (1.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 178 | ANT_SIDA [character] | 1. No |
|
194 (97.0%) | 6 (3.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 179 | INDICE_CHARLSON [numeric] |
|
|
200 (100.0%) | 0 (0.0%) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 180 | ANTECEDENTES_COMPLETE [character] | 1. Complete |
|
200 (100.0%) | 0 (0.0%) |
Generated by summarytools 1.1.4 (R version 4.4.2)
2025-10-14
# Estrato
library(dplyr)
DATA_SET <- DATA_SET %>% mutate(Estrato_cat = cut(ESTRATO,
breaks = c (0,2, 4, 6),
right = T,
labels = c("Bajo", "Medio", "Alto")))
# EDUCACION
DATA_SET$EDUCACION_CAT <- ifelse(DATA_SET$EDUCACION %in% c("Educación preescolar", "Educación básica (primaria)", "Sin educación formal"), "Primaria o menos", ifelse(DATA_SET$EDUCACION %in% c("Educación media (bachiller)"), "Basica/secundaria", ifelse(DATA_SET$EDUCACION %in% c("Educación superior (universitaria)", "Educación técnica", "Posgrado (especializacion, maestria, doctorado)"), "Mas que secundaria", DATA_SET$EDUCACION)))
DATA_SET$EDUCACION_CAT <- factor(DATA_SET$EDUCACION_CAT, levels = c("Primaria o menos", "Basica/secundaria", "Mas que secundaria") ) #REORDENANDO LAS CATEGORIAS
#Situacion marital
DATA_SET$SIT_MARITAL_CAT <- ifelse(DATA_SET$SIT_MARITAL %in% c("Casado(a)", "Unión libre"), "Casada/Union Libre",
ifelse(DATA_SET$SIT_MARITAL %in% c("Separado(a)", "Divorciado(a)", "Viudo(a)"), "Separada/Viuda",
ifelse(DATA_SET$SIT_MARITAL %in% c("Soltero(a)"), "Soltera", DATA_SET$SIT_MARITAL)))
DATA_SET$SIT_MARITAL_CAT <- factor(DATA_SET$SIT_MARITAL_CAT, levels = c("Soltera", "Casada/Union Libre", "Separada/Viuda") ) #REORDENANDO LAS CATEGORIAS
#OCUPACION
DATA_SET$OCUPACIONL_CAT <- ifelse(DATA_SET$OCUPACION %in% c("Ama de Casa", "Hogar"), "Ama de casa/hogar",
ifelse(DATA_SET$OCUPACION %in% c("Abogado", "Administrador de Empresas", "Auxiliar Varios", "Auxiliares de Enfermeria", "Cocineros", "Contadores", "Empleados de Oficina", "Estilistas", "Ingenieros", "Oficiales de Cubierta", "Personal de Servidumbre", "Personal Directivo de la Administraciblica", "Profesores y Educadores", "Sastres y Modistos", "Secretaria", "Socioantropo", "Vendedor"), "empleado/ocupado",
DATA_SET$OCUPACION))
DATA_SET$OCUPACIONL_CAT<- factor(DATA_SET$OCUPACIONL_CAT, levels = c("Ama de casa/hogar", "empleado/ocupado", "Pensionado", "Cesante") ) #REORDENANDO LAS CATEGORIAS
#Satisfaccion salud
DATA_SET$SATISFACCION_CAT <- ifelse(DATA_SET$SATISFACCION_ATENCION_SALUD %in% c("Poco satisfecho", "Moderadamente satisfecho"), "Poco satisfechas",
ifelse(DATA_SET$SATISFACCION_ATENCION_SALUD %in% c("Muy satisfecho", "Extremadamente satisfecho"), "Muy satisfechas", DATA_SET$SATISFACCION_ATENCION_SALUD))
#ESTADIO
DATA_SET$ESTADIO <- ifelse(DATA_SET$ESTADIFICACION_MAMA_NCCN %in% c("0", "IA", "IB", "IIA"), "Temprano",
ifelse(DATA_SET$ESTADIFICACION_MAMA_NCCN %in% c("IIB", "IIIA", "IIIB", "IIIC"), "Localmente avanzado",
ifelse(DATA_SET$ESTADIFICACION_MAMA_NCCN %in% c("IV"), "Metastasico", DATA_SET$ESTADIFICACION_MAMA_NCCN)))
DATA_SET$ESTADIO<- factor(DATA_SET$ESTADIO, levels = c("Temprano", "Localmente avanzado", "Metastasico", "No reporta") ) #REORDENANDO LAS CATEGORIAS
#CLASIFICACION_INMUNOHISTOQUIMICA
DATA_SET <- DATA_SET %>%
mutate(LUMINAL_A = ifelse((CLASIFICACION_INMUNOHISTOQUIMICA_RE_POSITIVO == "Checked" | CLASIFICACION_INMUNOHISTOQUIMICA_RP_POSITIVO == "Checked" ) & (CLASIFICACION_INMUNOHISTOQUIMICA_KI_67_POSITIVO == "Unchecked" & CLASIFICACION_INMUNOHISTOQUIMICA_HER2_POSITIVO == "Unchecked"), "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(LUMINAL_B = ifelse((CLASIFICACION_INMUNOHISTOQUIMICA_RE_POSITIVO == "Checked" | CLASIFICACION_INMUNOHISTOQUIMICA_RP_POSITIVO == "Checked" ) & (CLASIFICACION_INMUNOHISTOQUIMICA_KI_67_POSITIVO == "Checked" & CLASIFICACION_INMUNOHISTOQUIMICA_HER2_POSITIVO == "Unchecked"), "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(HER2_POSITIVO = ifelse(CLASIFICACION_INMUNOHISTOQUIMICA_HER2_POSITIVO == "Checked", "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(TRIPLE_NEGATIVO = ifelse(CLASIFICACION_INMUNOHISTOQUIMICA_RE_POSITIVO == "Unchecked" & CLASIFICACION_INMUNOHISTOQUIMICA_RP_POSITIVO == "Unchecked" & CLASIFICACION_INMUNOHISTOQUIMICA_HER2_POSITIVO == "Unchecked", "Si", "No"))
#CLASIFICACION TRATAMIENTOS
DATA_SET <- DATA_SET %>%
mutate(TRAT_SISTEMICO = ifelse(TRAT_QUIMIOTERAPIA_NEOADYUVANTE == "Checked" | TRAT_QUIMIOTERAPIA_ADYUVANTE == "Checked" | TIPO_T_SISTEMICO_NEOADYUVANTE_QUIMIOTERAPIA == "Checked" | TIPO_T_SISTEMICO_NEOADYUVANTE_T.BLANCO == "Checked" | TIPO_T_SISTEMICO_NEOADYUVANTE_INMUNOTERAPIA == "Checked" | TIPO_T_SISTEMICO_ADYUVANTE_QUIMIOTERAPIA == "Checked" | TIPO_T_SISTEMICO_ADYUVANTE_T.BLANCO == "Checked", "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(TRAT_RADIOTERAPIA = ifelse(TRAT_RADIOTERAPIA_NEOADYUVANTE == "Checked" |TRAT_RADIOTERAPIA_ADYUVANTE == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_TODO_SENO_CONVENCIONAL == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_TODO_SENO_HIPOFRACCIONADA == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_RADIOT_3D_CRT == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_RADIOT_IMRT == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_BRAQUITERAPIA == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_RADIACION_GANGLIOS == "Checked" | TIPO_RADIOTERAPIA_ADYUVANTE_OTRO == "Checked", "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(TRAT_CIRUGIA_RADICAL = ifelse(TRAT_CIRUGIA_RADICAL == "Checked" | TRAT_CIRUGIA_RADICAL_MODIFICADA == "Checked" & TRAT_CIRUGIA_CONSERVADORA == "Unchecked", "Si", "No"))
DATA_SET <- DATA_SET %>%
mutate(
TRAT_HORMONOTERAPIA = ifelse(
TRAT_TRATAMIENTO_HORMONAL == "Checked" |
!is.na(TRAT_HORMONAL_COMPLETADO) |
!is.na(TRAT_HORMONAL_ACTUAL),
"Si",
"No"
)
)
# Cuidado de soporte se prueban dos maneras: Recibio o no atencion y por recepcion de cuidado de soporte oncologico primario
DATA_SET <- DATA_SET %>%
mutate(Cuidado_soporte_UA = ifelse(ATENCION_UA_NINGUNO == "Unchecked", "Si", "No"))
#Indice charlson
DATA_SET <- DATA_SET %>%
mutate(charlson_cat = cut(INDICE_CHARLSON,
breaks = c (-Inf, 2, 4, Inf),
right = T,
labels = c ("1-2", "3-4", "=>5")
))
DATA_SET <- DATA_SET %>%
mutate(edad_cat = cut(EDAD_DX,
breaks = c (-Inf, 50, Inf),
right = F,
labels = c ("<50", "=>50")
))
DATA_SET <- DATA_SET %>%
mutate(Tiemposup_cat = cut(TIEMPO_SUPERVIVENCIA,
breaks = c (-Inf, 5, Inf),
right = T,
labels = c ("<=5", ">5")
))
Analisis descriptivo de las variables
#dput(names(DATA_SET))
myVars1 <- c("EDAD","Estrato_cat","EDUCACION_CAT", "SIT_MARITAL_CAT", "OCUPACIONL_CAT", "FRACCION_OCUPACIONES" , "SATISFACCION_CAT", "TIEMPO_SUPERVIVENCIA", "Tiemposup_cat", "EDAD_DX", "edad_cat", "ESTADIO", "LUMINAL_A", "LUMINAL_B", "HER2_POSITIVO", "TRIPLE_NEGATIVO", "TRAT_SISTEMICO", "TRAT_ANTIHER2", "TRAT_RADIOTERAPIA", "TRAT_CIRUGIA_RADICAL", "TRAT_CIRUGIA_CONSERVADORA", "TRAT_HORMONOTERAPIA", "RECAIDA_CANCER_MAMA", "charlson_cat", "Cuidado_soporte_UA", "Cuidado_soporte_primario")
catVars1 <- c("Estrato_cat","EDUCACION_CAT", "SIT_MARITAL_CAT", "OCUPACIONL_CAT", "SATISFACCION_CAT","Tiemposup_cat", "edad_cat", "ESTADIO", "LUMINAL_A", "LUMINAL_B", "HER2_POSITIVO", "TRIPLE_NEGATIVO", "TRAT_SISTEMICO", "TRAT_ANTIHER2", "TRAT_RADIOTERAPIA", "TRAT_CIRUGIA_RADICAL", "TRAT_CIRUGIA_CONSERVADORA",
"TRAT_HORMONOTERAPIA", "RECAIDA_CANCER_MAMA", "charlson_cat", "Cuidado_soporte_UA")
library(tableone)
tab1 <- CreateTableOne(vars = myVars1, factorVars= catVars1, data = DATA_SET, includeNA = T, test = T,addOverall = T)
table1 <- as.data.frame(print(tab1, showAllLevels= TRUE, printToggle = FALSE, noSpaces = TRUE))
rownames(table1) <- gsub("\\.{3,}", "", rownames(table1)) # Quita puntos suspensivos "..."
rownames(table1) <- gsub("\\.{1,}", "_", rownames(table1)) # Quita puntos suspensivos "..."
rownames(table1) <- gsub("\\_{1,}", " ", rownames(table1)) # Quita puntos suspensivos "..."
library(knitr)
library(kableExtra)
kable(table1, format = "html", caption = "Variable sociodemograficas") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), full_width = F,position = "center") %>%
column_spec(1, bold = T, color = "white", background = "black") %>%
column_spec(2, border_left = T, color = "white", background = "grey")
| level | Overall | |
|---|---|---|
| n | 200 | |
| EDAD mean SD | 65.12 (9.54) | |
| Estrato cat | Bajo | 82 (41.0) |
| X | Medio | 111 (55.5) |
| X 1 | Alto | 7 (3.5) |
| EDUCACION CAT | Primaria o menos | 82 (41.0) |
| X 2 | Basica/secundaria | 42 (21.0) |
| X 3 | Mas que secundaria | 76 (38.0) |
| SIT MARITAL CAT | Soltera | 46 (23.0) |
| X 4 | Casada/Union Libre | 99 (49.5) |
| X 5 | Separada/Viuda | 55 (27.5) |
| OCUPACIONL CAT | Ama de casa/hogar | 91 (45.5) |
| X 6 | empleado/ocupado | 48 (24.0) |
| X 7 | Pensionado | 56 (28.0) |
| X 8 | Cesante | 5 (2.5) |
| FRACCION OCUPACIONES mean SD | 60.47 (30.57) | |
| SATISFACCION CAT | Muy satisfechas | 184 (92.0) |
| X 9 | Poco satisfechas | 16 (8.0) |
| TIEMPO SUPERVIVENCIA mean SD | 8.20 (4.84) | |
| Tiemposup cat | <=5 | 56 (28.0) |
| X 10 | >5 | 144 (72.0) |
| EDAD DX mean SD | 56.92 (10.15) | |
| edad cat | <50 | 49 (24.5) |
| X 11 | =>50 | 151 (75.5) |
| ESTADIO | Temprano | 112 (56.0) |
| X 12 | Localmente avanzado | 78 (39.0) |
| X 13 | Metastasico | 2 (1.0) |
| X 14 | No reporta | 8 (4.0) |
| LUMINAL A | No | 89 (44.5) |
| X 15 | Si | 111 (55.5) |
| LUMINAL B | No | 168 (84.0) |
| X 16 | Si | 32 (16.0) |
| HER2 POSITIVO | No | 169 (84.5) |
| X 17 | Si | 31 (15.5) |
| TRIPLE NEGATIVO | No | 174 (87.0) |
| X 18 | Si | 26 (13.0) |
| TRAT SISTEMICO | No | 56 (28.0) |
| X 19 | Si | 144 (72.0) |
| TRAT ANTIHER2 | Checked | 29 (14.5) |
| X 20 | Unchecked | 171 (85.5) |
| TRAT RADIOTERAPIA | No | 35 (17.5) |
| X 21 | Si | 165 (82.5) |
| TRAT CIRUGIA RADICAL | No | 127 (63.5) |
| X 22 | Si | 73 (36.5) |
| TRAT CIRUGIA CONSERVADORA | Checked | 127 (63.5) |
| X 23 | Unchecked | 73 (36.5) |
| TRAT HORMONOTERAPIA | No | 43 (21.5) |
| X 24 | Si | 157 (78.5) |
| RECAIDA CANCER MAMA | No | 196 (98.0) |
| X 25 | Si | 4 (2.0) |
| charlson cat | 1-2 | 10 (5.0) |
| X 26 | 3-4 | 92 (46.0) |
| X 27 | =>5 | 98 (49.0) |
| Cuidado soporte UA | No | 154 (77.0) |
| X 28 | Si | 46 (23.0) |
Cruzar ocupadas - ocupadas con fraccion de ocupaciones
DATA_CR <- DATA_SET %>% select(OCUPACIONL_CAT, FRACCION_OCUPACIONES)
print(stby(data = DATA_CR, INDICES = DATA_CR$OCUPACIONL_CAT,
FUN = descr, stats = "common", transpose = TRUE), method = 'render')
| Mean | Std.Dev | Min | Median | Max | N.Valid | N | Pct.Valid | |
|---|---|---|---|---|---|---|---|---|
| Ama de casa/hogar | 72.93 | 25.76 | 10.00 | 80.00 | 100.00 | 91 | 91 | 100.00 |
| empleado/ocupado | 39.83 | 26.09 | 5.00 | 30.00 | 100.00 | 48 | 48 | 100.00 |
| Pensionado | 59.20 | 31.87 | 1.00 | 56.50 | 100.00 | 56 | 56 | 100.00 |
| Cesante | 45.80 | 25.75 | 4.00 | 50.00 | 75.00 | 5 | 5 | 100.00 |
Generated by summarytools 1.1.4 (R version 4.4.2)
2025-10-14
# %>%
# stview() ver en markdown
Revisando diferencias
Se realiza una prueba de normalidad por cada categoría.
#install.packages("broom")
library(broom)
library(tidyr)
library(purrr)
tabla_shapiro <- DATA_CR %>%
group_by(OCUPACIONL_CAT) %>%
summarise(
shapiro = list(shapiro.test(FRACCION_OCUPACIONES)),
.groups = "drop"
) %>%
mutate(shapiro = map(shapiro, tidy)) %>%
unnest(shapiro)
library(gt)
tabla_shapiro %>%
gt() %>%
tab_header(
title = md("**Prueba de normalidad Shapiro-Wilk por grupo**"),
subtitle = "Resultados agrupados"
) %>%
tab_style(
style = cell_text(align = "center", weight = "bold", color = "darkblue"),
locations = cells_column_labels(everything())
) %>%
tab_style(
style = cell_text(align = "center"),
locations = cells_body(columns = everything())
) %>%
fmt_number(
columns = where(is.numeric),
decimals = 4
) %>%
opt_table_outline() %>%
opt_row_striping()
| Prueba de normalidad Shapiro-Wilk por grupo | |||
| Resultados agrupados | |||
| OCUPACIONL_CAT | statistic | p.value | method |
|---|---|---|---|
| Ama de casa/hogar | 0.8764 | 0.0000 | Shapiro-Wilk normality test |
| empleado/ocupado | 0.8972 | 0.0005 | Shapiro-Wilk normality test |
| Pensionado | 0.9183 | 0.0010 | Shapiro-Wilk normality test |
| Cesante | 0.8394 | 0.1634 | Shapiro-Wilk normality test |
Se encontró una distribución no normal, se usa la prueba Kruskall wallis
kruskal_res <- kruskal.test(
x = DATA_CR$FRACCION_OCUPACIONES,
g = DATA_CR$OCUPACIONL_CAT
)
# convertir a tibble
kruskal_table <- tidy(kruskal_res)
kruskal_table %>%
gt() %>%
tab_header(
title = md("**Prueba de Kruskal-Wallis**"),
subtitle = md("Comparación de medianas entre grupos")
) %>%
fmt_number(
columns = everything(),
decimals = 4
) %>%
tab_style(
style = list(
cell_text(weight = "bold", color = "darkblue", align = "center")
),
locations = cells_column_labels(everything())
) %>%
opt_table_outline() %>%
tab_options(
table.border.top.color = "black",
table.border.bottom.color = "black",
table.font.size = 14
)
| Prueba de Kruskal-Wallis | |||
| Comparación de medianas entre grupos | |||
| statistic | p.value | parameter | method |
|---|---|---|---|
| 37.9675 | 0.0000 | 3.0000 | Kruskal-Wallis rank sum test |
Hay diferencias en al menos en la distribución de una variable (hay al menos una mediana diferente). Se revisa la comparación entre pares (no parametrico)
library(FSA)
# Correr la prueba de Dunn
dunn_res <- dunnTest(FRACCION_OCUPACIONES ~ OCUPACIONL_CAT,
data = DATA_CR,
method = "bonferroni")
# Extraer la tabla de resultados
tabla_dunn <- dunn_res$res
# Pasar a gt para embellecer
tabla_dunn %>%
gt() %>%
tab_header(
title = "Prueba de Dunn post-hoc",
subtitle = "Ajuste por Bonferroni"
) %>%
cols_label(
Comparison = "Comparación",
Z = "Estadístico Z",
P.unadj = "p-valor sin ajuste",
P.adj = "p-valor ajustado"
) %>%
fmt_number(
columns = c(Z, P.unadj, P.adj),
decimals = 4
) %>%
tab_style(
style = list(
cell_text(weight = "bold", align = "center")
),
locations = cells_column_labels(everything())
)
| Prueba de Dunn post-hoc | |||
| Ajuste por Bonferroni | |||
| Comparación | Estadístico Z | p-valor sin ajuste | p-valor ajustado |
|---|---|---|---|
| Ama de casa/hogar - Cesante | 1.9816 | 0.0475 | 0.2851 |
| Ama de casa/hogar - empleado/ocupado | 6.0429 | 0.0000 | 0.0000 |
| Cesante - empleado/ocupado | 0.3570 | 0.7211 | 1.0000 |
| Ama de casa/hogar - Pensionado | 2.5181 | 0.0118 | 0.0708 |
| Cesante - Pensionado | −1.0338 | 0.3012 | 1.0000 |
| empleado/ocupado - Pensionado | −3.3060 | 0.0009 | 0.0057 |
Hay diferencias entre todas las modalidades de ocupación y la fracción de ocupaciones.
library(limma)
library(UpSetR)
BASE_UPSET <- DATA_SET %>% select(ATENCION_UA_CUIDADO_PALIATIVO, ATENCION_UA_PSICOONCOLOGIA, ATENCION_UA_NUTRICION, ATENCION_UA_PROGRAMA_LINFEDEMA, ATENCION_UA_PROGRAMA_FATIGA_REH_ONCOLOGICA, ATENCION_UA_SEXOLOGIA_GINECOLOGIA_FUNCIONAL, ATENCION_UA_NEUROLOGIA, ATENCION_UA_TRABAJO_SOCIAL, ATENCION_UA_MEDICINA_OCUPACIONAL, ATENCION_UA_MEDICINA_CIRUGIA_PLASTICA_RECONSTRUCTIVA, ATENCION_UA_MEDICINA_FISIATRIA_MEDICINA_FISICA)
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_CUIDADO_PALIATIVO"] <- "Cuidado paliativo"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_PSICOONCOLOGIA"] <- "Psicooncologia"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_NUTRICION"] <- "Nutricion"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_PROGRAMA_LINFEDEMA"] <- "Linfedema"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_PROGRAMA_FATIGA_REH_ONCOLOGICA"] <- "Programa Fatiga"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_SEXOLOGIA_GINECOLOGIA_FUNCIONAL"] <- "Sexologia Gineco"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_NEUROLOGIA"] <- "Neurologia"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_TRABAJO_SOCIAL"] <- "Trabajo social"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_MEDICINA_OCUPACIONAL"] <- "Medicina Ocupacional"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_MEDICINA_CIRUGIA_PLASTICA_RECONSTRUCTIVA"] <- "Cirugia plastica"
colnames(BASE_UPSET)[colnames(BASE_UPSET) =="ATENCION_UA_MEDICINA_FISIATRIA_MEDICINA_FISICA"] <- "Medicina fisica"
BASE_UPSET <- BASE_UPSET %>%
mutate(across(c(1:11), ~ recode(., "Checked" = 1, "Unchecked" = 0)))
BASE_UPSET<- as.data.frame(BASE_UPSET)
upset(BASE_UPSET, order.by = "freq", nsets = 11, nintersects = 20,
matrix.color = "#2F4F4F", main.bar.color = "darkblue", sets.bar.color = "#5F9EA0", mainbar.y.label = "Intersecciones Cuidado soporte", sets.x.label = "Atencion especialidad", point.size = 2, line.size = 0.5, number.angles = 0, group.by = "degree", shade.alpha = 1, matrix.dot.alpha = 1, scale.intersections = "identity", scale.sets = "identity", text.scale = 1, set_size.show = T)
#Ajuste base datos
library(dplyr)
DATA_PROFILES <- DATA_SET %>% mutate(across(c(14:41, 44:66), ~ recode(., "Un poco" = 1, "Para nada" = 2, "Mucho" = 3, "Bastante" = 4))) # no se incluyeron las columnas 44 y 45 debido que son items que van de 1 a 7
# se invirtieron los items 44, 45 y 46.
DATA_PROFILES<- DATA_PROFILES %>%
mutate(across(57:59, ~ recode(., `1` = 4,`2` = 3, `3` = 2, `4` = 1)))
Revisando posibles pacientes “descuidados”
#install.packages("careless")
library(careless)
library(psych)
DATA_PROFILES_careless <- DATA_PROFILES %>%
select(1, 14:43) %>% # Solo columna 1 (ID) + columnas 14:66 (variables QLQ)
mutate(string = longstring(select(., -1))) %>% # Calcular longstring excluyendo ID
mutate(md = outlier(select(., -1), plot = FALSE)) # Calcular MD excluyendo ID
library(knitr)
library(kableExtra)
# Crear tabla de frecuencias
tabla_freq <- freq(DATA_PROFILES_careless$string, report.nas = TRUE)
tabla_df <- as.data.frame(tabla_freq)
# Mostrar tabla con bordes
kable(tabla_df, caption = "Frecuencia de la variable", align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover", "condensed"),
full_width = FALSE,
position = "center"
)
| Freq | % Valid | % Valid Cum. | % Total | % Total Cum. | |
|---|---|---|---|---|---|
| 2 | 1 | 0.5 | 0.5 | 0.5 | 0.5 |
| 3 | 7 | 3.5 | 4.0 | 3.5 | 4.0 |
| 4 | 12 | 6.0 | 10.0 | 6.0 | 10.0 |
| 5 | 28 | 14.0 | 24.0 | 14.0 | 24.0 |
| 6 | 16 | 8.0 | 32.0 | 8.0 | 32.0 |
| 7 | 28 | 14.0 | 46.0 | 14.0 | 46.0 |
| 8 | 17 | 8.5 | 54.5 | 8.5 | 54.5 |
| 9 | 29 | 14.5 | 69.0 | 14.5 | 69.0 |
| 10 | 20 | 10.0 | 79.0 | 10.0 | 79.0 |
| 11 | 3 | 1.5 | 80.5 | 1.5 | 80.5 |
| 12 | 6 | 3.0 | 83.5 | 3.0 | 83.5 |
| 14 | 3 | 1.5 | 85.0 | 1.5 | 85.0 |
| 15 | 2 | 1.0 | 86.0 | 1.0 | 86.0 |
| 16 | 2 | 1.0 | 87.0 | 1.0 | 87.0 |
| 17 | 4 | 2.0 | 89.0 | 2.0 | 89.0 |
| 18 | 4 | 2.0 | 91.0 | 2.0 | 91.0 |
| 19 | 6 | 3.0 | 94.0 | 3.0 | 94.0 |
| 20 | 2 | 1.0 | 95.0 | 1.0 | 95.0 |
| 21 | 2 | 1.0 | 96.0 | 1.0 | 96.0 |
| 22 | 1 | 0.5 | 96.5 | 0.5 | 96.5 |
| 24 | 2 | 1.0 | 97.5 | 1.0 | 97.5 |
| 27 | 1 | 0.5 | 98.0 | 0.5 | 98.0 |
| 28 | 4 | 2.0 | 100.0 | 2.0 | 100.0 |
| <NA> | 0 | NA | NA | 0.0 | 100.0 |
| Total | 200 | 100.0 | 100.0 | 100.0 | 100.0 |
Se identifican los ID
indices_problematicos <- which(DATA_PROFILES_careless$string >= 20)
print(paste("Números de fila con longstring >= 20:", paste(indices_problematicos, collapse = ", ")))
## [1] "Números de fila con longstring >= 20: 16, 25, 65, 82, 95, 104, 105, 107, 120, 123, 160, 199"
tabla_df2<- DATA_PROFILES_careless[c(16, 25, 65, 82, 95, 104, 105, 107, 120, 123, 160, 199),]
kable(tabla_df2, caption = "Casos con patron ´descuidado´", align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover", "condensed"),
full_width = FALSE,
position = "center"
)
| ID | qlq_c30_1 | qlq_c30_2 | qlq_c30_3 | qlq_c30_4 | qlq_c30_5 | qlq_c30_6 | qlq_c30_7 | qlq_c30_8 | qlq_c30_9 | qlq_c30_10 | qlq_c30_11 | qlq_c30_12 | qlq_c30_13 | qlq_c30_14 | qlq_c30_15 | qlq_c30_16 | qlq_c30_17 | qlq_c30_18 | qlq_c30_19 | qlq_c30_20 | qlq_c30_21 | qlq_c30_22 | qlq_c30_23 | qlq_c30_24 | qlq_c30_25 | qlq_c30_26 | qlq_c30_27 | qlq_c30_28 | qlq_c30_29 | qlq_c30_30 | string | md |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 7 | 7 | 28 | 13.067318 |
| 25 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 7 | 7 | 28 | 13.067318 |
| 65 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 2 | 2 | 2 | 2 | 2 | 6 | 6 | 22 | 8.212105 |
| 82 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 2 | 1 | 2 | 2 | 2 | 2 | 7 | 7 | 20 | 8.298888 |
| 95 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 6 | 7 | 21 | 8.607638 |
| 104 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 7 | 7 | 28 | 13.067318 |
| 105 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 7 | 7 | 28 | 13.067318 |
| 107 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 2 | 2 | 2 | 7 | 7 | 24 | 9.251880 |
| 120 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 2 | 2 | 1 | 2 | 2 | 2 | 7 | 7 | 21 | 8.054821 |
| 123 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 2 | 2 | 2 | 6 | 6 | 24 | 9.773573 |
| 160 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 2 | 6 | 6 | 20 | 6.927155 |
| 199 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 4 | 6 | 7 | 27 | 27.569145 |
Se mantuvieron los ID, puesto que tienen sentido clínico
#se limpio la base de datos eliminando esos 5 datos.
#DATA_PROFILES_clean <- DATA_PROFILES %>%
# filter(!ID %in% c(16, 25, 104, 105, 199))
########################## BASE #############################
DATA_PROFILES <- DATA_PROFILES %>%
mutate(PF = qlq_c30_1 + qlq_c30_2 + qlq_c30_3 + qlq_c30_4 + qlq_c30_5) #Physical functioning 1
DATA_PROFILES <- DATA_PROFILES%>%
mutate(RF = qlq_c30_6 + qlq_c30_7) # Role functioning 2
DATA_PROFILES <- DATA_PROFILES %>%
mutate(CF = qlq_c30_20 + qlq_c30_25) #Cognitive functioning 3
DATA_PROFILES <- DATA_PROFILES %>%
mutate(EF = qlq_c30_21 + qlq_c30_22 + qlq_c30_23 + qlq_c30_24) #Emotional functioning 4
DATA_PROFILES <- DATA_PROFILES %>%
mutate(SF = qlq_c30_26 + qlq_c30_27)#Social functioning 5
DATA_PROFILES <- DATA_PROFILES %>%
mutate(GLH = qlq_c30_29 + qlq_c30_30) #Global health status / QoL 6
DATA_PROFILES <- DATA_PROFILES %>%
mutate(FA = qlq_c30_10 + qlq_c30_12 + qlq_c30_18) #Fatigue 7
DATA_PROFILES <- DATA_PROFILES %>%
mutate(NV = qlq_c30_14 + qlq_c30_15) #Nausea and vomiting 8
DATA_PROFILES <- DATA_PROFILES %>%
mutate(PA = qlq_c30_9 + qlq_c30_19) #Pain 9
DATA_PROFILES <- DATA_PROFILES %>%
mutate(DY = qlq_c30_8) #Dyspnoea 10
DATA_PROFILES <- DATA_PROFILES %>%
mutate(SL = qlq_c30_11) #Insomnia 11
DATA_PROFILES <- DATA_PROFILES %>%
mutate(AP = qlq_c30_13) #Appetite loss 12
DATA_PROFILES <- DATA_PROFILES %>%
mutate(CO = qlq_c30_16) #Constipation 13
DATA_PROFILES <- DATA_PROFILES %>%
mutate(DI = qlq_c30_17) #Diarrhoea 14
#################### Escalas suplementarias ############################
DATA_PROFILES <- DATA_PROFILES %>%
mutate(FI = qlq_c30_28) #Financial difficulties 15
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRST = qlq_c30_31 + qlq_c30_32 + qlq_c30_33 + qlq_c30_34 + qlq_c30_36 + qlq_c30_37 + qlq_c30_38) #Systemic therapy side effects 16
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRHL = qlq_c30_35) #Upset by hair loss 17
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRBI = qlq_c30_39 + qlq_c30_40 + qlq_c30_41 + qlq_c30_42) #Body image 18
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRFU = qlq_c30_43) #Future perspective 19
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRSEF = qlq_c30_44 + qlq_c30_45) #Sexual functionning 20
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRSEE = qlq_c30_46) #Sexual enjoyment 21
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRAS = qlq_c30_47 + qlq_c30_48 + qlq_c30_49) #Arm symptoms 22
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRBS = qlq_c30_50 + qlq_c30_51 + qlq_c30_52 + qlq_c30_53) #Breast symptoms 23
######## Mediana escala suplementarias ################
DATA_PROFILES <- DATA_PROFILES %>%
mutate(FI_cat = cut(FI,
breaks = c (-Inf, 2, Inf),
right = T,
labels = c ("<=2", ">2")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRST_cat = cut(BRST,
breaks = c (-Inf, 14, Inf),
right = T,
labels = c ("<=14", ">=14")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRHL_cat = cut(BRHL,
breaks = c (-Inf, 2, Inf),
right = T,
labels = c ("<=2", ">2")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRFU_cat = cut(BRFU,
breaks = c (-Inf, 2, Inf),
right = T,
labels = c ("<=2", ">2")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRBI_cat = cut(BRBI,
breaks = c (-Inf, 8, Inf),
right = T,
labels = c ("<=8", ">8")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRSEF_cat = cut(BRSEF,
breaks = c (-Inf, 6, Inf),
right = T,
labels = c ("<=6", ">6")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRSEE_cat = cut(BRSEE,
breaks = c (-Inf, 3, Inf),
right = T,
labels = c ("<=3", ">3")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRAS_cat = cut(BRAS,
breaks = c (-Inf, 6, Inf),
right = T,
labels = c ("<=6", ">6")
))
DATA_PROFILES <- DATA_PROFILES %>%
mutate(BRBS_cat = cut(BRBS,
breaks = c (-Inf, 8, Inf),
right = T,
labels = c ("<=8", ">8")
))
#latent profile analysis
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_1"] <- "QL1"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_2"] <- "QL2"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_3"] <- "QL3"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_4"] <- "QL4"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_5"] <- "QL5"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_6"] <- "QL6"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_7"] <- "QL7"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_8"] <- "QL8"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_9"] <- "QL9"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_10"] <- "QL10"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_11"] <- "QL11"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_12"] <- "QL12"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_13"] <- "QL13"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_14"] <- "QL14"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_15"] <- "QL15"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_16"] <- "QL16"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_17"] <- "QL17"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_18"] <- "QL18"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_19"] <- "QL19"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_20"] <- "QL20"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_21"] <- "QL21"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_22"] <- "QL22"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_23"] <- "QL23"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_24"] <- "QL24"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_25"] <- "QL25"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_26"] <- "QL26"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_27"] <- "QL27"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_28"] <- "QL28"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_29"] <- "QL29"
colnames(DATA_PROFILES)[colnames(DATA_PROFILES) =="qlq_c30_30"] <- "QL30"
library(mclust)
DATA_PROFILES_ANALYSIS_TOTAL <- DATA_PROFILES %>%
select(ID, PF, RF, CF, EF, SF, GLH, FA, NV, PA, DY, SL, AP, CO, DI )
DATA_PROFILES_ITEM <- DATA_PROFILES %>%
select(ID, QL1, QL2, QL3, QL4, QL5, QL6, QL7, QL20, QL25, QL21, QL22, QL23, QL24, QL26, QL27, QL10, QL12, QL18, QL14, QL15, QL9, QL19, QL8, QL11, QL13, QL16, QL17, QL29, QL30)
mc1 <-mclustBIC(DATA_PROFILES_ITEM[,-1]) #create the model items
mc2 <-mclustBIC(DATA_PROFILES_ANALYSIS_TOTAL[,-1]) #create the model totals
set.seed(2025)
summary(mc1) # 2 - 4 GRUPOS CON item
## Best BIC values:
## VEI,3 VEI,2 EEI,2
## BIC -8932.165 -9907.6195 -11702.78
## BIC diff 0.000 -975.4549 -2770.62
summary(mc2) # 7 - 9 GRUPOS CON totales
## Best BIC values:
## VEI,9 VEI,8 VEI,7
## BIC -6226.15 -6454.1912 -6492.3054
## BIC diff 0.00 -228.0413 -266.1555
Cuando se analizan items se podrian encontrar entre 2 a 4 perfiles
Cuando se analizan totales se podrian encontrar entre 7 a 9 perfiles
Hay menos grupos cuando se analizan items que los totales
#install.packages("factoextra")
library(factoextra) #plotting the best model
mc1.1 <-Mclust(DATA_PROFILES_ITEM[,-1])
fviz_mclust_bic(mc1.1)
Se encontrarian una mejor solucion en 3 perfiles
Se utiliza el modelo de analisis por items
set.seed(2025)
model1 <- Mclust(DATA_PROFILES_ITEM[,-1], modelNames = "VEI", G = 3)
summary(model1)
## ----------------------------------------------------
## Gaussian finite mixture model fitted by EM algorithm
## ----------------------------------------------------
##
## Mclust VEI (diagonal, equal shape) model with 3 components:
##
## log-likelihood n df BIC ICL
## -4148.183 200 120 -8932.165 -8933.862
##
## Clustering table:
## 1 2 3
## 67 30 103
Se obtienen primero las probabilidades de pertencia
library(tibble)
library(tidyr)
means <- data.frame(model1$parameters$mean) %>%
rownames_to_column() %>%
rename(DATA_PROFILES_imp = rowname) %>%
pivot_longer(cols = c(X1, X2, X3), names_to = "Profile", values_to = "Mean") %>%
mutate(
Mean = round(Mean, 2),
# Estandarización Z (normalización usando media y desviación estándar)
Mean = (Mean - mean(Mean)) / sd(Mean)
)
p <- means %>%
mutate(Profile = recode(Profile,
X1 = "P1 (67)",
X2 = "P2 (30)",
X3 = "P3 (103)")) %>%
ggplot(aes(DATA_PROFILES_imp, Mean, group = Profile, color = Profile)) +
geom_point(size = 2.25) +
geom_line(size = 1.25) +
scale_x_discrete(limits = c("QL1", "QL2", "QL3", "QL4", "QL5", "QL6", "QL7", "QL20", "QL25",
"QL21", "QL22", "QL23", "QL24", "QL26", "QL27", "QL10", "QL12", "QL18", "QL14", "QL15", "QL9", "QL19", "QL8", "QL11", "QL13", "QL16", "QL17", "QL29", "QL30" )) +
scale_color_manual(values = c("P1 (67)" = "blue2", "P2 (30)" = "green4", "P3 (103)" = "darkorange2"))+
labs(x = "Items calidad vida", y = "Media estandarizada", title = "Perfiles Calidad de vida") +
theme_bw(base_size = 14) +
theme(
axis.text.x = element_text(angle = 90, hjust = 1, size = 10, face = "bold"), # Letras eje X más grandes y en negrita
axis.text.y = element_text(size = 14, face = "bold"), # Letras eje Y más grandes y en negrita
axis.title.x = element_text(size = 16, face = "bold"), # Aumentar tamaño de la etiqueta del eje X
axis.title.y = element_text(size = 16, face = "bold"), # Aumentar tamaño de la etiqueta del eje Y
legend.position = "right",
legend.text = element_text(size = 10, face = "bold"), # Aumentar el tamaño de la leyenda y ponerla en negrita
legend.title = element_text(size = 16, face = "bold") # Aumentar tamaño del título de la leyenda
)
p
Se encontraron solamente 3 perfiles
Se procede a caracterizarlos
#Primero se conoce la clasificaicón por perfil
# Extraer las clasificaciones del modelo
clases <- model1$classification
# Agregar las clases al data frame
DATA_PROFILES <- DATA_PROFILES %>%
mutate(Perfil = clases)
myVars2 <- c("EDAD","Estrato_cat","EDUCACION_CAT", "SIT_MARITAL_CAT", "OCUPACIONL_CAT", "FRACCION_OCUPACIONES" , "SATISFACCION_CAT", "TIEMPO_SUPERVIVENCIA","Tiemposup_cat", "EDAD_DX", "edad_cat", "ESTADIO", "LUMINAL_A", "LUMINAL_B", "HER2_POSITIVO", "TRIPLE_NEGATIVO", "TRAT_SISTEMICO", "TRAT_ANTIHER2", "TRAT_RADIOTERAPIA", "TRAT_CIRUGIA_RADICAL", "TRAT_CIRUGIA_CONSERVADORA", "TRAT_HORMONOTERAPIA", "RECAIDA_CANCER_MAMA", "charlson_cat", "Cuidado_soporte_UA", "Cuidado_soporte_primario", "PF", "RF", "CF", "EF", "SF", "GLH", "FA", "NV", "PA", "DY", "SL", "AP", "CO", "DI", "FI","FI_cat", "BRST","BRST_cat", "BRHL", "BRHL_cat", "BRBI", "BRBI_cat", "BRFU","BRFU_cat", "BRSEF","BRSEF_cat", "BRSEE","BRSEE_cat", "BRAS", "BRAS_cat","BRBS", "BRBS_cat")
catVars2 <- c("Estrato_cat","EDUCACION_CAT", "SIT_MARITAL_CAT", "OCUPACIONL_CAT", "SATISFACCION_CAT","Tiemposup_cat", "edad_cat", "ESTADIO", "LUMINAL_A", "LUMINAL_B", "HER2_POSITIVO", "TRIPLE_NEGATIVO", "TRAT_SISTEMICO", "TRAT_ANTIHER2", "TRAT_RADIOTERAPIA", "TRAT_CIRUGIA_RADICAL", "TRAT_CIRUGIA_CONSERVADORA", "TRAT_HORMONOTERAPIA", "RECAIDA_CANCER_MAMA", "charlson_cat", "Cuidado_soporte_UA", "Cuidado_soporte_primario","FI_cat", "BRST_cat", "BRHL_cat", "BRBI_cat", "BRFU_cat", "BRSEF_cat", "BRSEE_cat", "BRAS_cat","BRBS_cat")
tab2 <- CreateTableOne(vars = myVars2, factorVars= catVars2, data = DATA_PROFILES, strata ="Perfil", includeNA = T, test = T,addOverall = T)
table2 <- as.data.frame(print(tab2, showAllLevels= TRUE, printToggle = FALSE, noSpaces = TRUE))
rownames(table2) <- gsub("\\.{3,}", "", rownames(table2)) # Quita puntos suspensivos "..."
rownames(table2) <- gsub("\\.{1,}", "_", rownames(table2)) # Quita puntos suspensivos "..."
rownames(table2) <- gsub("\\_{1,}", " ", rownames(table2)) # Quita puntos suspensivos "..."
kable(table2, format = "html", caption = "Variable sociodemograficas") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), full_width = F,position = "center") %>%
column_spec(1, bold = T, color = "white", background = "black") %>%
column_spec(2, border_left = T, color = "white", background = "grey")
| level | Overall | 1 | 2 | 3 | p | test | |
|---|---|---|---|---|---|---|---|
| n | 200 | 67 | 30 | 103 | |||
| EDAD mean SD | 65.12 (9.54) | 65.75 (9.68) | 66.53 (10.32) | 64.31 (9.22) | 0.432 | ||
| Estrato cat | Bajo | 82 (41.0) | 27 (40.3) | 16 (53.3) | 39 (37.9) | 0.524 | |
| X | Medio | 111 (55.5) | 37 (55.2) | 14 (46.7) | 60 (58.3) | ||
| X 1 | Alto | 7 (3.5) | 3 (4.5) | 0 (0.0) | 4 (3.9) | ||
| EDUCACION CAT | Primaria o menos | 82 (41.0) | 26 (38.8) | 17 (56.7) | 39 (37.9) | 0.171 | |
| X 2 | Basica/secundaria | 42 (21.0) | 11 (16.4) | 4 (13.3) | 27 (26.2) | ||
| X 3 | Mas que secundaria | 76 (38.0) | 30 (44.8) | 9 (30.0) | 37 (35.9) | ||
| SIT MARITAL CAT | Soltera | 46 (23.0) | 10 (14.9) | 8 (26.7) | 28 (27.2) | 0.171 | |
| X 4 | Casada/Union Libre | 99 (49.5) | 36 (53.7) | 11 (36.7) | 52 (50.5) | ||
| X 5 | Separada/Viuda | 55 (27.5) | 21 (31.3) | 11 (36.7) | 23 (22.3) | ||
| OCUPACIONL CAT | Ama de casa/hogar | 91 (45.5) | 26 (38.8) | 16 (53.3) | 49 (47.6) | 0.430 | |
| X 6 | empleado/ocupado | 48 (24.0) | 19 (28.4) | 6 (20.0) | 23 (22.3) | ||
| X 7 | Pensionado | 56 (28.0) | 20 (29.9) | 6 (20.0) | 30 (29.1) | ||
| X 8 | Cesante | 5 (2.5) | 2 (3.0) | 2 (6.7) | 1 (1.0) | ||
| FRACCION OCUPACIONES mean SD | 60.47 (30.57) | 59.34 (29.93) | 54.27 (28.79) | 63.00 (31.46) | 0.364 | ||
| SATISFACCION CAT | Muy satisfechas | 184 (92.0) | 62 (92.5) | 27 (90.0) | 95 (92.2) | 0.906 | |
| X 9 | Poco satisfechas | 16 (8.0) | 5 (7.5) | 3 (10.0) | 8 (7.8) | ||
| TIEMPO SUPERVIVENCIA mean SD | 8.20 (4.84) | 8.55 (5.60) | 7.87 (3.77) | 8.08 (4.61) | 0.757 | ||
| Tiemposup cat | <=5 | 56 (28.0) | 21 (31.3) | 9 (30.0) | 26 (25.2) | 0.664 | |
| X 10 | >5 | 144 (72.0) | 46 (68.7) | 21 (70.0) | 77 (74.8) | ||
| EDAD DX mean SD | 56.92 (10.15) | 57.19 (11.28) | 58.67 (9.17) | 56.23 (9.66) | 0.496 | ||
| edad cat | <50 | 49 (24.5) | 17 (25.4) | 5 (16.7) | 27 (26.2) | 0.553 | |
| X 11 | =>50 | 151 (75.5) | 50 (74.6) | 25 (83.3) | 76 (73.8) | ||
| ESTADIO | Temprano | 112 (56.0) | 37 (55.2) | 25 (83.3) | 50 (48.5) | 0.025 | |
| X 12 | Localmente avanzado | 78 (39.0) | 26 (38.8) | 4 (13.3) | 48 (46.6) | ||
| X 13 | Metastasico | 2 (1.0) | 0 (0.0) | 0 (0.0) | 2 (1.9) | ||
| X 14 | No reporta | 8 (4.0) | 4 (6.0) | 1 (3.3) | 3 (2.9) | ||
| LUMINAL A | No | 89 (44.5) | 25 (37.3) | 14 (46.7) | 50 (48.5) | 0.343 | |
| X 15 | Si | 111 (55.5) | 42 (62.7) | 16 (53.3) | 53 (51.5) | ||
| LUMINAL B | No | 168 (84.0) | 58 (86.6) | 25 (83.3) | 85 (82.5) | 0.777 | |
| X 16 | Si | 32 (16.0) | 9 (13.4) | 5 (16.7) | 18 (17.5) | ||
| HER2 POSITIVO | No | 169 (84.5) | 59 (88.1) | 24 (80.0) | 86 (83.5) | 0.551 | |
| X 17 | Si | 31 (15.5) | 8 (11.9) | 6 (20.0) | 17 (16.5) | ||
| TRIPLE NEGATIVO | No | 174 (87.0) | 59 (88.1) | 27 (90.0) | 88 (85.4) | 0.768 | |
| X 18 | Si | 26 (13.0) | 8 (11.9) | 3 (10.0) | 15 (14.6) | ||
| TRAT SISTEMICO | No | 56 (28.0) | 21 (31.3) | 12 (40.0) | 23 (22.3) | 0.125 | |
| X 19 | Si | 144 (72.0) | 46 (68.7) | 18 (60.0) | 80 (77.7) | ||
| TRAT ANTIHER2 | Checked | 29 (14.5) | 9 (13.4) | 6 (20.0) | 14 (13.6) | 0.650 | |
| X 20 | Unchecked | 171 (85.5) | 58 (86.6) | 24 (80.0) | 89 (86.4) | ||
| TRAT RADIOTERAPIA | No | 35 (17.5) | 12 (17.9) | 6 (20.0) | 17 (16.5) | 0.901 | |
| X 21 | Si | 165 (82.5) | 55 (82.1) | 24 (80.0) | 86 (83.5) | ||
| TRAT CIRUGIA RADICAL | No | 127 (63.5) | 43 (64.2) | 22 (73.3) | 62 (60.2) | 0.417 | |
| X 22 | Si | 73 (36.5) | 24 (35.8) | 8 (26.7) | 41 (39.8) | ||
| TRAT CIRUGIA CONSERVADORA | Checked | 127 (63.5) | 42 (62.7) | 23 (76.7) | 62 (60.2) | 0.253 | |
| X 23 | Unchecked | 73 (36.5) | 25 (37.3) | 7 (23.3) | 41 (39.8) | ||
| TRAT HORMONOTERAPIA | No | 43 (21.5) | 12 (17.9) | 7 (23.3) | 24 (23.3) | 0.681 | |
| X 24 | Si | 157 (78.5) | 55 (82.1) | 23 (76.7) | 79 (76.7) | ||
| RECAIDA CANCER MAMA | No | 196 (98.0) | 65 (97.0) | 29 (96.7) | 102 (99.0) | 0.560 | |
| X 25 | Si | 4 (2.0) | 2 (3.0) | 1 (3.3) | 1 (1.0) | ||
| charlson cat | 1-2 | 10 (5.0) | 4 (6.0) | 1 (3.3) | 5 (4.9) | 0.314 | |
| X 26 | 3-4 | 92 (46.0) | 31 (46.3) | 9 (30.0) | 52 (50.5) | ||
| X 27 | =>5 | 98 (49.0) | 32 (47.8) | 20 (66.7) | 46 (44.7) | ||
| Cuidado soporte UA | No | 154 (77.0) | 60 (89.6) | 18 (60.0) | 76 (73.8) | 0.003 | |
| X 28 | Si | 46 (23.0) | 7 (10.4) | 12 (40.0) | 27 (26.2) | ||
| PF mean SD | 10.18 (1.71) | 9.78 (0.83) | 11.80 (2.54) | 9.97 (1.59) | <0.001 | ||
| RF mean SD | 4.03 (0.87) | 3.97 (0.17) | 4.57 (1.65) | 3.90 (0.76) | 0.001 | ||
| CF mean SD | 3.90 (1.31) | 3.66 (0.64) | 4.53 (1.70) | 3.87 (1.46) | 0.009 | ||
| EF mean SD | 7.92 (2.16) | 7.40 (1.18) | 8.87 (2.66) | 7.99 (2.39) | 0.007 | ||
| SF mean SD | 3.96 (0.90) | 4.00 (0.00) | 4.57 (2.06) | 3.77 (0.49) | <0.001 | ||
| GLH mean SD | 11.31 (2.05) | 12.63 (1.27) | 9.23 (2.31) | 11.06 (1.78) | <0.001 | ||
| FA mean SD | 5.70 (1.64) | 5.58 (0.74) | 7.60 (2.49) | 5.22 (1.35) | <0.001 | ||
| NV mean SD | 3.90 (0.45) | 4.00 (0.00) | 3.83 (0.99) | 3.86 (0.34) | 0.105 | ||
| PA mean SD | 4.03 (1.67) | 3.57 (0.87) | 4.83 (2.17) | 4.10 (1.81) | 0.002 | ||
| DY mean SD | 1.92 (0.57) | 1.90 (0.31) | 2.00 (0.91) | 1.91 (0.58) | 0.696 | ||
| SL mean SD | 1.97 (0.94) | 1.82 (0.63) | 2.47 (1.22) | 1.91 (0.97) | 0.005 | ||
| AP mean SD | 2.02 (0.50) | 2.00 (0.00) | 2.40 (0.93) | 1.92 (0.44) | <0.001 | ||
| CO mean SD | 1.93 (0.65) | 1.82 (0.39) | 1.93 (0.83) | 1.99 (0.72) | 0.251 | ||
| DI mean SD | 1.99 (0.43) | 2.00 (0.00) | 2.20 (0.92) | 1.92 (0.30) | 0.006 | ||
| FI mean SD | 2.00 (0.61) | 1.99 (0.33) | 2.20 (1.06) | 1.96 (0.56) | 0.156 | ||
| FI cat | <=2 | 185 (92.5) | 66 (98.5) | 22 (73.3) | 97 (94.2) | <0.001 | |
| X 29 | >2 | 15 (7.5) | 1 (1.5) | 8 (26.7) | 6 (5.8) | ||
| BRST mean SD | 14.37 (2.50) | 13.39 (1.49) | 16.47 (2.64) | 14.40 (2.62) | <0.001 | ||
| BRST cat | <=14 | 119 (59.5) | 51 (76.1) | 6 (20.0) | 62 (60.2) | <0.001 | |
| X 30 | >=14 | 81 (40.5) | 16 (23.9) | 24 (80.0) | 41 (39.8) | ||
| BRHL mean SD | 2.14 (0.74) | 1.94 (0.25) | 2.21 (0.83) | 2.25 (0.89) | 0.029 | ||
| BRHL cat | <=2 | 157 (78.5) | 62 (92.5) | 21 (70.0) | 74 (71.8) | 0.001 | |
| X 31 | >2 | 30 (15.0) | 0 (0.0) | 7 (23.3) | 23 (22.3) | ||
| X 32 | NA | 13 (6.5) | 5 (7.5) | 2 (6.7) | 6 (5.8) | ||
| BRBI mean SD | 7.75 (1.29) | 7.76 (0.61) | 7.57 (2.28) | 7.80 (1.23) | 0.692 | ||
| BRBI cat | <=8 | 179 (89.5) | 65 (97.0) | 22 (73.3) | 92 (89.3) | 0.002 | |
| X 33 | >8 | 21 (10.5) | 2 (3.0) | 8 (26.7) | 11 (10.7) | ||
| BRFU mean SD | 2.22 (1.14) | 1.85 (0.82) | 2.70 (1.24) | 2.32 (1.23) | 0.001 | ||
| BRFU cat | <=2 | 139 (69.5) | 61 (91.0) | 12 (40.0) | 66 (64.1) | <0.001 | |
| X 34 | >2 | 61 (30.5) | 6 (9.0) | 18 (60.0) | 37 (35.9) | ||
| BRSEF mean SD | 6.19 (1.13) | 6.31 (1.12) | 6.07 (0.94) | 6.15 (1.18) | 0.519 | ||
| BRSEF cat | <=6 | 149 (74.5) | 49 (73.1) | 26 (86.7) | 74 (71.8) | 0.248 | |
| X 35 | >6 | 51 (25.5) | 18 (26.9) | 4 (13.3) | 29 (28.2) | ||
| BRSEE mean SD | 2.89 (0.83) | 2.82 (0.95) | 2.92 (0.65) | 2.94 (0.79) | 0.677 | ||
| BRSEE cat | <=3 | 149 (74.5) | 49 (73.1) | 22 (73.3) | 78 (75.7) | 0.371 | |
| X 36 | >3 | 29 (14.5) | 11 (16.4) | 2 (6.7) | 16 (15.5) | ||
| X 37 | NA | 22 (11.0) | 7 (10.4) | 6 (20.0) | 9 (8.7) | ||
| BRAS mean SD | 5.88 (1.64) | 5.34 (1.16) | 6.90 (1.81) | 5.94 (1.72) | <0.001 | ||
| BRAS cat | <=6 | 155 (77.5) | 62 (92.5) | 15 (50.0) | 78 (75.7) | <0.001 | |
| X 38 | >6 | 45 (22.5) | 5 (7.5) | 15 (50.0) | 25 (24.3) | ||
| BRBS mean SD | 7.68 (1.63) | 7.52 (0.82) | 7.97 (2.34) | 7.69 (1.78) | 0.464 | ||
| BRBS cat | <=8 | 174 (87.0) | 65 (97.0) | 25 (83.3) | 84 (81.6) | 0.011 | |
| X 39 | >8 | 26 (13.0) | 2 (3.0) | 5 (16.7) | 19 (18.4) |
Nota:
Escalas complementarias
Se seleccionan las variables para el modelo multivariado si el p valor fue igual o menor a 0.2 EDUCACION CAT, ESTADIO, TRAT SISTEMICO, Cuidado soporte UA, “BRST”, “BRHL”, “BRFU”, “BRAS”. No se incluyen los ítems con los que se calcularon los perfiles
Frecuencias por perfil
library(sjmisc)
library(sjPlot)
library(nnet)
library(wakefield)
frq(DATA_PROFILES, Perfil)
## Perfil <numeric>
## # total N=200 valid N=200 mean=2.18 sd=0.91
##
## Value | N | Raw % | Valid % | Cum. %
## --------------------------------------
## 1 | 67 | 33.50 | 33.50 | 33.50
## 2 | 30 | 15.00 | 15.00 | 48.50
## 3 | 103 | 51.50 | 51.50 | 100.00
## <NA> | 0 | 0.00 | <NA> | <NA>
library(MASS)
library(ordinal)
DATA_PROFILES$Perfil2 <- factor(DATA_PROFILES$Perfil, levels = c(2, 3, 1), labels = c("Baja", "Media", "Alta"))
modelo1 <- clm(Perfil2 ~ EDUCACION_CAT + SIT_MARITAL_CAT+ ESTADIO + TRAT_SISTEMICO + Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRBI_cat + BRFU_cat + BRAS_cat + BRBS_cat, data = DATA_PROFILES)
summary(modelo1)
## formula:
## Perfil2 ~ EDUCACION_CAT + SIT_MARITAL_CAT + ESTADIO + TRAT_SISTEMICO + Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRBI_cat + BRFU_cat + BRAS_cat + BRBS_cat
## data: DATA_PROFILES
##
## link threshold nobs logLik AIC niter max.grad cond.H
## logit flexible 187 -139.03 314.06 6(0) 1.41e-09 2.3e+02
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## EDUCACION_CATBasica/secundaria 0.10179 0.42215 0.241 0.809452
## EDUCACION_CATMas que secundaria 0.70042 0.37315 1.877 0.060510 .
## SIT_MARITAL_CATCasada/Union Libre 0.35929 0.41867 0.858 0.390805
## SIT_MARITAL_CATSeparada/Viuda 0.19267 0.46529 0.414 0.678805
## ESTADIOLocalmente avanzado 0.31134 0.35280 0.882 0.377517
## ESTADIOMetastasico -1.32641 1.52246 -0.871 0.383628
## ESTADIONo reporta 0.06442 0.87960 0.073 0.941619
## TRAT_SISTEMICOSi 0.04185 0.37283 0.112 0.910634
## Cuidado_soporte_UASi -0.85482 0.41335 -2.068 0.038640 *
## FI_cat>2 -1.54832 0.67502 -2.294 0.021805 *
## BRST_cat>=14 -1.07830 0.36245 -2.975 0.002929 **
## BRHL_cat>2 -0.85013 0.45671 -1.861 0.062684 .
## BRBI_cat>8 -0.90831 0.57698 -1.574 0.115427
## BRFU_cat>2 -1.15085 0.38239 -3.010 0.002616 **
## BRAS_cat>6 -1.44871 0.42135 -3.438 0.000585 ***
## BRBS_cat>8 -0.54755 0.49647 -1.103 0.270080
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Threshold coefficients:
## Estimate Std. Error z value
## Baja|Media -3.66731 0.64781 -5.661
## Media|Alta 0.07983 0.53614 0.149
## (13 observations deleted due to missingness)
modelo2 <- clm(Perfil2 ~ Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRFU_cat + BRAS_cat, data = DATA_PROFILES)
summary(modelo2)
## formula:
## Perfil2 ~ Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRFU_cat + BRAS_cat
## data: DATA_PROFILES
##
## link threshold nobs logLik AIC niter max.grad cond.H
## logit flexible 187 -144.02 304.05 6(0) 3.39e-10 1.9e+01
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## Cuidado_soporte_UASi -0.7850 0.3832 -2.049 0.040496 *
## FI_cat>2 -1.6624 0.6226 -2.670 0.007584 **
## BRST_cat>=14 -1.2151 0.3392 -3.582 0.000341 ***
## BRHL_cat>2 -0.8847 0.4365 -2.027 0.042699 *
## BRFU_cat>2 -1.2325 0.3729 -3.305 0.000951 ***
## BRAS_cat>6 -1.3693 0.4021 -3.405 0.000661 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Threshold coefficients:
## Estimate Std. Error z value
## Baja|Media -4.1354 0.4400 -9.399
## Media|Alta -0.5340 0.2267 -2.355
## (13 observations deleted due to missingness)
Como primer criterio de retención de variables es la significancia estadística, como segundo criterio se realizó una prueba de supuestos de proporcionalidad de los ODDS, variables que no respeten el supuesto fueron excluídas.
nominal_test(modelo2)
## Tests of nominal effects
##
## formula: Perfil2 ~ Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRFU_cat + BRAS_cat
## Df logLik AIC LRT Pr(>Chi)
## <none> -144.02 304.05
## Cuidado_soporte_UA 1 -143.85 305.71 0.3423 0.5584894
## FI_cat 1 -143.86 305.73 0.3197 0.5717739
## BRST_cat 1 -142.65 303.31 2.7401 0.0978605 .
## BRHL_cat 1 -138.28 294.56 11.4907 0.0006995 ***
## BRFU_cat 1 -143.96 305.92 0.1272 0.7213717
## BRAS_cat 1 -144.02 306.05 0.0000 0.9960410
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Se realiza prueba de verosimilitud, fue necesario realizarlo solamente con los datos completos
vars_sub <- c("Perfil2", "Cuidado_soporte_UA", "FI_cat", "BRST_cat", "BRHL_cat", "BRFU_cat", "BRAS_cat")
DATA_SUB <- DATA_PROFILES[complete.cases(DATA_PROFILES[, vars_sub]), ]
modelo1.1 <- clm(Perfil2 ~ EDUCACION_CAT + SIT_MARITAL_CAT+ ESTADIO + TRAT_SISTEMICO + Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRBI_cat + BRFU_cat + BRAS_cat + BRBS_cat, data = DATA_SUB)
modelo2.1 <- clm(Perfil2 ~ Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRFU_cat + BRAS_cat, data = DATA_SUB)
library(lmtest)
lrtest(modelo1.1, modelo2.1)
## Likelihood ratio test
##
## Model 1: Perfil2 ~ EDUCACION_CAT + SIT_MARITAL_CAT + ESTADIO + TRAT_SISTEMICO +
## Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat + BRBI_cat +
## BRFU_cat + BRAS_cat + BRBS_cat
## Model 2: Perfil2 ~ Cuidado_soporte_UA + FI_cat + BRST_cat + BRHL_cat +
## BRFU_cat + BRAS_cat
## #Df LogLik Df Chisq Pr(>Chisq)
## 1 18 -139.03
## 2 8 -144.02 -10 9.9912 0.4413
Con la prueba de verosimilitud se tiene adecuado resultado.
Se estima el OR
Modelo reduido manualmente
library(gtsummary)
tbl_regression(modelo2, exponentiate = TRUE, add_estimate_to_reference_rows=TRUE) %>% add_global_p()
| Characteristic | OR | 95% CI | p-value |
|---|---|---|---|
| Cuidado_soporte_UA | 0.040 | ||
| No | 1.00 | — | |
| Si | 0.46 | 0.21, 0.96 | |
| FI_cat | 0.008 | ||
| <=2 | 1.00 | — | |
| >2 | 0.19 | 0.05, 0.63 | |
| BRST_cat | <0.001 | ||
| <=14 | 1.00 | — | |
| >=14 | 0.30 | 0.15, 0.57 | |
| BRHL_cat | 0.043 | ||
| <=2 | 1.00 | — | |
| >2 | 0.41 | 0.17, 0.96 | |
| BRFU_cat | <0.001 | ||
| <=2 | 1.00 | — | |
| >2 | 0.29 | 0.14, 0.60 | |
| BRAS_cat | <0.001 | ||
| <=6 | 1.00 | — | |
| >6 | 0.25 | 0.11, 0.55 | |
| Abbreviations: CI = Confidence Interval, OR = Odds Ratio | |||
| Variable | Categorías / Referencia | OR | IC 95% | p-value | Interpretación resumida |
|---|---|---|---|---|---|
| Cuidado_soporte_UA | Sí vs. No (ref) | 0.46 | 0.21 – 0.96 | 0.040 | Los pacientes con cuidado de soporte en el último año tienen menor chance de reportar mejor calidad de vida. |
| FI_cat | >2 vs. ≤2 (ref) | 0.19 | 0.05 – 0.63 | 0.008 | Mayores dificultades económicas se asocian con una peor calidad de vida. |
| BRST_cat | ≥14 vs. ≤14 (ref) | 0.30 | 0.15 – 0.57 | <0.001 | A mayor carga de síntomas de efectos secundarios de tratamiento reduce el chance de tener mejor calidad de vida. |
| BRHL_cat | >2 vs. ≤2 (ref) | 0.41 | 0.17 – 0.96 | 0.043 | Mayor angustia por la pérdida del cabello se relacionan con peor calidad de vida. |
| BRFU_cat | >2 vs. ≤2 (ref) | 0.29 | 0.14 – 0.60 | <0.001 | “Mayor perspectiva futura” reduce el chances de tener mejor calidad de vida. |
| BRAS_cat | >6 vs. ≤6 (ref) | 0.25 | 0.11 – 0.55 | <0.001 | Mayor síntomas de brazo se asocia con menor calidad de vida. |
Interpretación general:
Todas las variables presentan OR < 1, lo que indica que las variables
se asocian con menores chances de estar en categorías más altas
de calidad de vida (media o alta).