Como parte del plan de análisis, en primer lugar se realizó un análisis exploratorio de todas las variable, obteniendose conteos y frecuencias de las variables. Con el objetivo de hacer un análisis descriptivo.
Se trabajo con la siguiente base de datos:
library(readxl)
DBDRAEDNAr <- read_excel("C:/Users/fidel/OneDrive - CINVESTAV/PROYECTO MDatos/TRABAJOS/Dra Edna Sanchez Noguez Entrega 12-08/DBDRAEDNA2.xlsx")
View(DBDRAEDNAr)
names(DBDRAEDNAr)
## [1] "nombre" "casubtipo" "camasociado" "grado"
## [5] "metodo" "Hallazgomast" "formamast" "margenmast"
## [9] "densidadmast" "formault" "margenult" "ecogenicidad"
## [13] "fenomno" "calcificaciones" "BIRADS"
str(DBDRAEDNAr)
## tibble [80 × 15] (S3: tbl_df/tbl/data.frame)
## $ nombre : chr [1:80] "ANA LAURA CANO RAMIREZ" "MARIA ELENA GONZALEZ GUTIERREZ" "LUZ MARIA RAMIREZ CADENA" "SANGRA ANGELICA LIMON MOMERO" ...
## $ casubtipo : chr [1:80] "CARCINOMA DUCTAL INFILTRANTE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE" ...
## $ camasociado : chr [1:80] NA "CARCINOMA DUCTAL IN SITU, DE BAJO GRADO, DE TIPO CRIBIFORME Y PAPILAR" NA "CARCINOMA LOBULILLAR" ...
## $ grado : chr [1:80] "III" "I" "III" "I" ...
## $ metodo : chr [1:80] "Ultrasonido" "Masto / Ultra" "Masto / Ultra" "Ultrasonido" ...
## $ Hallazgomast : chr [1:80] "NÓDULO" "DISTORSIÓN + NÓDULO" "DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL" "NÓDULO" ...
## $ formamast : chr [1:80] NA "IRREGULAR" "IRREGULAR" NA ...
## $ margenmast : chr [1:80] NA "OSCURECIDO" "ESPICULADO" NA ...
## $ densidadmast : chr [1:80] NA "ISODENSO" "ALTA" NA ...
## $ formault : chr [1:80] "IRREGULAR" "IRREGULAR" "IRREGULAR" "IRREGULAR" ...
## $ margenult : chr [1:80] "ANGULADO" "ANGULADO" "LOBULADO" "ANGULADO" ...
## $ ecogenicidad : chr [1:80] "HETEROGÉNEO" "HIPOECOICO" "HETEROGÉNEO" "HIPOECOICO" ...
## $ fenomno : chr [1:80] "NO" "SOMBRA" "NO" "SOMBRA" ...
## $ calcificaciones: chr [1:80] NA NA "PLEOMORFICAS" NA ...
## $ BIRADS : chr [1:80] "4" "4B" NA "4C" ...
#Trabajamos con estos paquetes
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✔ ggplot2 3.3.6 ✔ purrr 0.3.4
## ✔ tibble 3.1.7 ✔ dplyr 1.0.9
## ✔ tidyr 1.2.0 ✔ stringr 1.4.0
## ✔ readr 2.1.2 ✔ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
library(magrittr)
##
## Attaching package: 'magrittr'
## The following object is masked from 'package:purrr':
##
## set_names
## The following object is masked from 'package:tidyr':
##
## extract
library(gtsummary)
## #BlackLivesMatter
library(dlookr)
##
## Attaching package: 'dlookr'
## The following object is masked from 'package:magrittr':
##
## extract
## The following object is masked from 'package:tidyr':
##
## extract
## The following object is masked from 'package:base':
##
## transform
library(gtable)
library(gt)
dbedna<-DBDRAEDNAr %>% select(casubtipo,camasociado, grado, metodo, Hallazgomast, formamast,
margenmast, densidadmast, formault, margenult, ecogenicidad,
fenomno,calcificaciones,BIRADS)
dbedna %>% gt()
| casubtipo | camasociado | grado | metodo | Hallazgomast | formamast | margenmast | densidadmast | formault | margenult | ecogenicidad | fenomno | calcificaciones | BIRADS |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CARCINOMA DUCTAL INFILTRANTE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HETEROGÉNEO | NO | NA | 4 |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU, DE BAJO GRADO, DE TIPO CRIBIFORME Y PAPILAR | I | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | OSCURECIDO | ISODENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL | IRREGULAR | ESPICULADO | ALTA | IRREGULAR | LOBULADO | HETEROGÉNEO | NO | PLEOMORFICAS | NA |
| CARCINOMA DUCTAL INFILTRANTE | CARCINOMA LOBULILLAR | I | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Mastografia | DISTORSIÓN | NA | NA | NA | IRREGULAR | NA | NA | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE | DUCTAL IN SITU | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HETEROGÉNEO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | COMPLEJA | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | COMPLEJA | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE | CARCINOMA IN SITU: DE ALTO GRADO CON NECROSIS TIPO "COMEDO" EN 10%. | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 4c |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | INDEFINIDO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | INDEFINIDO | HIPOECOICO | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE | NA | III | Masto / Ultra | NÓDULO | NA | NA | NA | IRREGULAR | INDEFINIDO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | DISTORSIÓN + NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | DISTORSIÓN + NÓDULO + CALCIFICACIONES | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | LINEALES FINAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Masto / Ultra | NÓDULO | OVOIDEO | CIRCUNSCRITO | ISODENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO + CALCIFICACIONES | OVOIDEO | OSCURECIDO | ISODENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | PALOMITA EN MAIZ | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Mastografia | ASIMETRIA FOCAL + CALCIFICACIONES | NA | NA | NA | NA | NA | NA | NA | AMORFAS | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | OVOIDEO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA IN SITU DE BAJO GRADO | III | Masto / Ultra | NÓDULO | CIRCUNSCRITO | OVOIDEO | HIPERDENSO | OVALADO | CIRCUNSCRITO | HIPOECOICO | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | DISTORSIÓN + NÓDULO + CALCIFICACIONES | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | LINEALES FINAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Mastografia | CALCIFICACIONES | NA | NA | NA | NA | NA | NA | NA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO+ CALCIFICACIONES | OVOIDEO | OSCURECIDO | HIPERDENSO | OVALADO | MICROLOBULADO | HIPOECOICO | NO | PLEOMORFICAS | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | NÓDULO+ CALCIFICACIONES | IRREGULAR | ESPICULADO | HIPERDENSO | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | ASIMETRIA FOCAL+ NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Masto / Ultra | ASIMETRIA FOCAL+ NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Mastografia | CALCIFICACIONES | NA | NA | NA | NA | NA | NA | NA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | NÓDULO | IRREGULAR | OSCURECIDO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU, COMEDOCARCINOMA Y SOLIDO | III | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | ANGULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU, COMEDOCARCINOMA Y SOLIDO | I | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | ANGULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU CON PATRÓN SÓLIDO | II | Masto / Ultra | NÓDULO | OVOIDEO | IRREGULAR | ISODENSO | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO + CALCIFICACIONES | OVOIDEO | OSCURECIDO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | NÓDULO + CALCIFICACIONES | OVOIDEO | ESPICULADO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE | NA | I | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | ESPICULADO | HIPERDENSO | irregular | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | IRREGULAR | ISODENSO | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | MICROLOBULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | ANGULADO | HIPOECOICO | NO | NA | 4C |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | ESPICULADO | HIPERDENSO | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Mastografia | CALCIFICACIONES | NA | NA | NA | NA | NA | NA | NA | PLEOMORFICAS | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | OVALADO | CIRCUNSCRITO | ISOECOICO | NO | NA | 4A |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | ESPICULADO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU TIPO COMEDO | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | NO | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINAMO DUCTAL IN SITU DE BAJO GRADO | I | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | ESPICULADO | HIPERDENSO | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINAMO DUCTAL IN SITU DE ALTO GRADO | III | Masto / Ultra | NÓDULO | OVOIDEO | MICROLOBULADOS | HIPERDENSO | IRREGULAR | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | MICROLOBULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Mastografia | CALCIFICACIONES | NA | NA | NA | NA | NA | NA | NA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | INTRADUCTAL | OVOIDEO | MICROLOBULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | DISTORSIÓN + NÓDULO | IRREGULAR | ESPICULADO | HIPERDENSO | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | NÓDULO | OVOIDEO | ESPICULADO | HIPERDENSO | OVOIDEO | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | HIPERDENSO | IRREGULAR | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | MICROLOBULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | CIRCUNSCRITO | HIPERDENSO | OVOIDEO | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | ASIMETRIA FOCAL + CALCIFICACIONES | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | PLEOMORFICAS | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | MICROLOBULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | ISODENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | CIRCUNSCRITO | HIPERDENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | CARCINOMA DUCTAL IN SITU TIPO COMEDO | III | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | ISODENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 4B |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | MICROLOBULADO | HIPOECOICO | NO | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | NO | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | ISODENSO | OVOIDEO | ANGULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | I | Masto / Ultra | ASIMETRIA FOCAL+ NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | NÓDULO | OVOIDEO | OSCURECIDO | ISODENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Masto / Ultra | ASIMETRIA FOCAL+ NÓDULO | NA | NA | NA | IRREGULAR | ANGULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | III | Masto / Ultra | NÓDULO | OVOIDEO | CIRCUNSCRITO | HIPERDENSO | OVOIDEO | MICROLOBULADO | HIPOECOICO | SOMBRA | NA | 5 |
| CARCINOMA DUCTAL INFILTRANTE SPE | NA | II | Ultrasonido | NÓDULO | NA | NA | NA | IRREGULAR | ESPICULADO | HIPOECOICO | SOMBRA | NA | 5 |
Cada una de las figuras esta representado por la frecuencia, además se muestra una tabla con el conteo.
#Paquetes
library(ggplot2)
library(ggpubr)
library(gt)
theme_set(theme_pubr())
###barplo subtipo cancer de mama
dbcasubtipo <- dbedna %>%
group_by(casubtipo) %>%
summarise(counts = n()) %>%
mutate(prop = round(counts*100/sum(counts), 1))
dbcasubtipo %>% gt()
| casubtipo | counts | prop |
|---|---|---|
| CARCINOMA DUCTAL INFILTRANTE | 13 | 16.2 |
| CARCINOMA DUCTAL INFILTRANTE SPE | 67 | 83.8 |
ggplot(dbcasubtipo, aes(x = casubtipo, y = prop)) +
geom_bar(fill = "#0099b4", stat = "identity") +
geom_text(aes(label = prop), vjust = -0.3, fontface=2, size= 6) +
theme_pubclean() + ylab("%") + xlab ("")+
theme(text = element_text(size = 16, face="bold"), axis.text = element_text(size = 16, face="bold"),
legend.text = element_text(size = 12),)
#primero se hacen las proporciones
catipo<- dbedna %>% drop_na(camasociado)
df <- catipo %>%
group_by(camasociado) %>%
summarise(counts = n())
df %>% gt
| camasociado | counts |
|---|---|
| CARCINAMO DUCTAL IN SITU DE ALTO GRADO | 1 |
| CARCINAMO DUCTAL IN SITU DE BAJO GRADO | 1 |
| CARCINOMA DUCTAL IN SITU CON PATRÓN SÓLIDO | 1 |
| CARCINOMA DUCTAL IN SITU TIPO COMEDO | 2 |
| CARCINOMA DUCTAL IN SITU, COMEDOCARCINOMA Y SOLIDO | 2 |
| CARCINOMA DUCTAL IN SITU, DE BAJO GRADO, DE TIPO CRIBIFORME Y PAPILAR | 1 |
| CARCINOMA IN SITU DE BAJO GRADO | 1 |
| CARCINOMA IN SITU: DE ALTO GRADO CON NECROSIS TIPO "COMEDO" EN 10%. | 1 |
| CARCINOMA LOBULILLAR | 1 |
| DUCTAL IN SITU | 1 |
df <- df %>%
arrange(desc(camasociado)) %>%
mutate(prop = round(counts*100/sum(counts), 1),
lab.ypos = cumsum(prop) - 0.5*prop)
head(df, 4)
## # A tibble: 4 × 4
## camasociado counts prop lab.ypos
## <chr> <int> <dbl> <dbl>
## 1 "DUCTAL IN SITU" 1 8.3 4.15
## 2 "CARCINOMA LOBULILLAR" 1 8.3 12.5
## 3 "CARCINOMA IN SITU: DE ALTO GRADO CON NECROSIS TIPO \"C… 1 8.3 20.8
## 4 "CARCINOMA IN SITU DE BAJO GRADO" 1 8.3 29.1
ggplot(df , aes(x = "", y = prop, fill = camasociado )) +
geom_bar(width = 1, stat = "identity", color = "white") +
geom_text(aes(y = lab.ypos, label = prop), color = "white",
fontface=2, size= 6)+
coord_polar("y", start = 0)+
ggpubr::fill_palette("jco")+
theme_void() + labs(fill = "Tipos de CA mama asociados") +
theme(text = element_text(size = 12, face="bold"))
### grado
dbgrado <- dbedna %>%
group_by(grado) %>%
summarise(counts = n()) %>%
mutate(prop = round(counts*100/sum(counts), 1))
dbgrado %>% gt
| grado | counts | prop |
|---|---|---|
| I | 19 | 23.8 |
| II | 36 | 45.0 |
| III | 25 | 31.2 |
ggplot(dbgrado, aes(x = grado, y = prop)) +
geom_bar(fill = "#EFC000FF", stat = "identity") +
geom_text(aes(label = prop), vjust = -0.3, fontface=2, size= 6) +
theme_pubclean() + ylab("%") + xlab ("Grado histológico")+
theme(text = element_text(size = 16, face="bold"), axis.text = element_text(size = 16, face="bold"),
legend.text = element_text(size = 12),)
#fig 4 : Método
dbmetod <- dbedna %>%
group_by(metodo) %>%
summarise(counts = n()) %>%
mutate(prop = round(counts*100/sum(counts), 1))
dbmetod %>% gt
| metodo | counts | prop |
|---|---|---|
| Masto / Ultra | 38 | 47.5 |
| Mastografia | 6 | 7.5 |
| Ultrasonido | 36 | 45.0 |
ggplot(dbmetod, aes(x = metodo, y = prop)) +
geom_bar(fill = "#CD534CFF", stat = "identity") +
geom_text(aes(label = prop), vjust = -0.3, fontface=2, size= 6) +
theme_pubclean() + ylab("%") + xlab ("Método")+
theme(text = element_text(size = 16, face="bold"), axis.text = element_text(size = 16, face="bold"),
legend.text = element_text(size = 12),)
#figura 5 : Hallazgomast y grado histologico
str(dbedna)
## tibble [80 × 14] (S3: tbl_df/tbl/data.frame)
## $ casubtipo : chr [1:80] "CARCINOMA DUCTAL INFILTRANTE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE" ...
## $ camasociado : chr [1:80] NA "CARCINOMA DUCTAL IN SITU, DE BAJO GRADO, DE TIPO CRIBIFORME Y PAPILAR" NA "CARCINOMA LOBULILLAR" ...
## $ grado : chr [1:80] "III" "I" "III" "I" ...
## $ metodo : chr [1:80] "Ultrasonido" "Masto / Ultra" "Masto / Ultra" "Ultrasonido" ...
## $ Hallazgomast : chr [1:80] "NÓDULO" "DISTORSIÓN + NÓDULO" "DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL" "NÓDULO" ...
## $ formamast : chr [1:80] NA "IRREGULAR" "IRREGULAR" NA ...
## $ margenmast : chr [1:80] NA "OSCURECIDO" "ESPICULADO" NA ...
## $ densidadmast : chr [1:80] NA "ISODENSO" "ALTA" NA ...
## $ formault : chr [1:80] "IRREGULAR" "IRREGULAR" "IRREGULAR" "IRREGULAR" ...
## $ margenult : chr [1:80] "ANGULADO" "ANGULADO" "LOBULADO" "ANGULADO" ...
## $ ecogenicidad : chr [1:80] "HETEROGÉNEO" "HIPOECOICO" "HETEROGÉNEO" "HIPOECOICO" ...
## $ fenomno : chr [1:80] "NO" "SOMBRA" "NO" "SOMBRA" ...
## $ calcificaciones: chr [1:80] NA NA "PLEOMORFICAS" NA ...
## $ BIRADS : chr [1:80] "4" "4B" NA "4C" ...
#piechart2
df2 <- dbedna %>%
group_by(Hallazgomast) %>%
summarise(counts = n())
df2
## # A tibble: 10 × 2
## Hallazgomast counts
## <chr> <int>
## 1 ASIMETRIA FOCAL + CALCIFICACIONES 2
## 2 ASIMETRIA FOCAL+ NÓDULO 4
## 3 CALCIFICACIONES 4
## 4 DISTORSIÓN 1
## 5 DISTORSIÓN + NÓDULO 7
## 6 DISTORSIÓN + NÓDULO + CALCIFICACIONES 2
## 7 DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL 1
## 8 NÓDULO 54
## 9 NÓDULO + CALCIFICACIONES 3
## 10 NÓDULO+ CALCIFICACIONES 2
df2 <- df2 %>%
arrange(desc(Hallazgomast)) %>%
mutate(prop = round(counts*100/sum(counts), 1),
lab.ypos = cumsum(prop) - 0.5*prop)
head(df2, 4)
## # A tibble: 4 × 4
## Hallazgomast counts prop lab.ypos
## <chr> <int> <dbl> <dbl>
## 1 NÓDULO+ CALCIFICACIONES 2 2.5 1.25
## 2 NÓDULO + CALCIFICACIONES 3 3.8 4.4
## 3 NÓDULO 54 67.5 40.0
## 4 DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y UL… 1 1.2 74.4
ggplot(df2 , aes(x = "", y = prop, fill = Hallazgomast)) +
geom_bar(width = 1, stat = "identity", color = "white") +
geom_text(aes(y = lab.ypos, label = prop), color = "white",
fontface=2, size= 4)+
coord_polar("y", start = 0)+
ggpubr::fill_palette("jco")+
theme_void() + labs(fill = "Tipos de CA mama asociados") +
theme(text = element_text(size = 12, face="bold"))
df2 %>% gt()
| Hallazgomast | counts | prop | lab.ypos |
|---|---|---|---|
| NÓDULO+ CALCIFICACIONES | 2 | 2.5 | 1.25 |
| NÓDULO + CALCIFICACIONES | 3 | 3.8 | 4.40 |
| NÓDULO | 54 | 67.5 | 40.05 |
| DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL | 1 | 1.2 | 74.40 |
| DISTORSIÓN + NÓDULO + CALCIFICACIONES | 2 | 2.5 | 76.25 |
| DISTORSIÓN + NÓDULO | 7 | 8.8 | 81.90 |
| DISTORSIÓN | 1 | 1.2 | 86.90 |
| CALCIFICACIONES | 4 | 5.0 | 90.00 |
| ASIMETRIA FOCAL+ NÓDULO | 4 | 5.0 | 95.00 |
| ASIMETRIA FOCAL + CALCIFICACIONES | 2 | 2.5 | 98.75 |
Las tablas forman parte además del análisis desriptivo de las variables, del análisis estadístico. Para estas tablas, se utilizó la prueba de Chi cuadrada de Pearson o exacta de Fisher, para determinar diferencias entre las variables y los grados histologicos. La tabla 1 es entre variables que se relacionan con estudio de mastografia y la tabla 2 con el ultrasonido
masto<-DBDRAEDNAr %>% select(grado, Hallazgomast, formamast,
margenmast, densidadmast,calcificaciones, BIRADS) %>% tbl_summary (by= grado) %>%
add_p() %>% add_overall()
masto
## Warning: The `fmt_missing()` function is deprecated and will soon be removed
## * Use the `sub_missing()` function instead
| Characteristic | Overall, N = 801 | I, N = 191 | II, N = 361 | III, N = 251 | p-value2 |
|---|---|---|---|---|---|
| Hallazgomast | 0.056 | ||||
| ASIMETRIA FOCAL + CALCIFICACIONES | 2 (2.5%) | 1 (5.3%) | 0 (0%) | 1 (4.0%) | |
| ASIMETRIA FOCAL+ NÓDULO | 4 (5.0%) | 1 (5.3%) | 3 (8.3%) | 0 (0%) | |
| CALCIFICACIONES | 4 (5.0%) | 0 (0%) | 4 (11%) | 0 (0%) | |
| DISTORSIÓN | 1 (1.3%) | 0 (0%) | 1 (2.8%) | 0 (0%) | |
| DISTORSIÓN + NÓDULO | 7 (8.8%) | 4 (21%) | 3 (8.3%) | 0 (0%) | |
| DISTORSIÓN + NÓDULO + CALCIFICACIONES | 2 (2.5%) | 1 (5.3%) | 1 (2.8%) | 0 (0%) | |
| DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL | 1 (1.3%) | 0 (0%) | 0 (0%) | 1 (4.0%) | |
| NÓDULO | 54 (68%) | 11 (58%) | 23 (64%) | 20 (80%) | |
| NÓDULO + CALCIFICACIONES | 3 (3.8%) | 0 (0%) | 1 (2.8%) | 2 (8.0%) | |
| NÓDULO+ CALCIFICACIONES | 2 (2.5%) | 1 (5.3%) | 0 (0%) | 1 (4.0%) | |
| formamast | 0.022 | ||||
| CIRCUNSCRITO | 1 (3.6%) | 0 (0%) | 0 (0%) | 1 (7.7%) | |
| IRREGULAR | 9 (32%) | 5 (71%) | 3 (38%) | 1 (7.7%) | |
| OVOIDEO | 18 (64%) | 2 (29%) | 5 (62%) | 11 (85%) | |
| Unknown | 52 | 12 | 28 | 12 | |
| margenmast | 0.3 | ||||
| CIRCUNSCRITO | 4 (14%) | 0 (0%) | 1 (12%) | 3 (23%) | |
| ESPICULADO | 9 (32%) | 5 (71%) | 3 (38%) | 1 (7.7%) | |
| IRREGULAR | 2 (7.1%) | 0 (0%) | 1 (12%) | 1 (7.7%) | |
| MICROLOBULADOS | 1 (3.6%) | 0 (0%) | 0 (0%) | 1 (7.7%) | |
| OSCURECIDO | 11 (39%) | 2 (29%) | 3 (38%) | 6 (46%) | |
| OVOIDEO | 1 (3.6%) | 0 (0%) | 0 (0%) | 1 (7.7%) | |
| Unknown | 52 | 12 | 28 | 12 | |
| densidadmast | 0.7 | ||||
| ALTA | 1 (3.4%) | 0 (0%) | 0 (0%) | 1 (7.7%) | |
| HIPERDENSO | 18 (62%) | 5 (62%) | 4 (50%) | 9 (69%) | |
| INTRADUCTAL | 1 (3.4%) | 1 (12%) | 0 (0%) | 0 (0%) | |
| ISODENSO | 9 (31%) | 2 (25%) | 4 (50%) | 3 (23%) | |
| Unknown | 51 | 11 | 28 | 12 | |
| calcificaciones | 0.5 | ||||
| AMORFAS | 1 (6.7%) | 1 (25%) | 0 (0%) | 0 (0%) | |
| LINEALES FINAS | 2 (13%) | 1 (25%) | 1 (17%) | 0 (0%) | |
| PALOMITA EN MAIZ | 1 (6.7%) | 0 (0%) | 0 (0%) | 1 (20%) | |
| PLEOMORFICAS | 11 (73%) | 2 (50%) | 5 (83%) | 4 (80%) | |
| Unknown | 65 | 15 | 30 | 20 | |
| BIRADS | 0.8 | ||||
| 4 | 1 (1.3%) | 0 (0%) | 0 (0%) | 1 (4.2%) | |
| 4A | 1 (1.3%) | 1 (5.3%) | 0 (0%) | 0 (0%) | |
| 4B | 14 (18%) | 4 (21%) | 6 (17%) | 4 (17%) | |
| 4c | 1 (1.3%) | 0 (0%) | 0 (0%) | 1 (4.2%) | |
| 4C | 19 (24%) | 5 (26%) | 9 (25%) | 5 (21%) | |
| 5 | 43 (54%) | 9 (47%) | 21 (58%) | 13 (54%) | |
| Unknown | 1 | 0 | 0 | 1 | |
| 1 n (%) | |||||
| 2 Fisher's exact test | |||||
us<-DBDRAEDNAr %>% select(grado,formault, margenult, ecogenicidad, fenomno) %>% tbl_summary (by= grado) %>%
add_p() %>% add_overall()
us
## Warning: The `fmt_missing()` function is deprecated and will soon be removed
## * Use the `sub_missing()` function instead
| Characteristic | Overall, N = 801 | I, N = 191 | II, N = 361 | III, N = 251 | p-value2 |
|---|---|---|---|---|---|
| formault | 0.15 | ||||
| irregular | 1 (1.3%) | 1 (5.6%) | 0 (0%) | 0 (0%) | |
| IRREGULAR | 51 (68%) | 9 (50%) | 26 (81%) | 16 (64%) | |
| OVALADO | 11 (15%) | 5 (28%) | 2 (6.2%) | 4 (16%) | |
| OVOIDEO | 12 (16%) | 3 (17%) | 4 (12%) | 5 (20%) | |
| Unknown | 5 | 1 | 4 | 0 | |
| margenult | 0.2 | ||||
| ANGULADO | 29 (39%) | 9 (50%) | 13 (42%) | 7 (28%) | |
| CIRCUNSCRITO | 2 (2.7%) | 1 (5.6%) | 0 (0%) | 1 (4.0%) | |
| ESPICULADO | 18 (24%) | 5 (28%) | 10 (32%) | 3 (12%) | |
| INDEFINIDO | 3 (4.1%) | 0 (0%) | 1 (3.2%) | 2 (8.0%) | |
| LOBULADO | 1 (1.4%) | 0 (0%) | 0 (0%) | 1 (4.0%) | |
| MICROLOBULADO | 21 (28%) | 3 (17%) | 7 (23%) | 11 (44%) | |
| Unknown | 6 | 1 | 5 | 0 | |
| ecogenicidad | 0.3 | ||||
| COMPLEJA | 2 (2.7%) | 1 (5.6%) | 0 (0%) | 1 (4.0%) | |
| HETEROGÉNEO | 3 (4.1%) | 0 (0%) | 1 (3.2%) | 2 (8.0%) | |
| HIPOECOICO | 68 (92%) | 16 (89%) | 30 (97%) | 22 (88%) | |
| ISOECOICO | 1 (1.4%) | 1 (5.6%) | 0 (0%) | 0 (0%) | |
| Unknown | 6 | 1 | 5 | 0 | |
| fenomno | >0.9 | ||||
| NO | 29 (39%) | 7 (39%) | 13 (41%) | 9 (36%) | |
| SOMBRA | 46 (61%) | 11 (61%) | 19 (59%) | 16 (64%) | |
| Unknown | 5 | 1 | 4 | 0 | |
| 1 n (%) | |||||
| 2 Fisher's exact test; Pearson's Chi-squared test | |||||
Para el análisis de regresión lógistica primero se acomodarón las variables tal y como se muestra en el siguiente código:
Se dicotomizo la variable de grado. Redefiniendose grado I y II, como 0 y grado III como 1, siendo esta última la variable predictora (se creo una nueva columna, denominada:altogrado, la cual será usada como variable dependiente en los posteriores analisisis.
#ANALÍSIS DE REGRESIÓN LÓGISTICA
str(DBDRAEDNAr)
## tibble [80 × 15] (S3: tbl_df/tbl/data.frame)
## $ nombre : chr [1:80] "ANA LAURA CANO RAMIREZ" "MARIA ELENA GONZALEZ GUTIERREZ" "LUZ MARIA RAMIREZ CADENA" "SANGRA ANGELICA LIMON MOMERO" ...
## $ casubtipo : chr [1:80] "CARCINOMA DUCTAL INFILTRANTE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE SPE" "CARCINOMA DUCTAL INFILTRANTE" ...
## $ camasociado : chr [1:80] NA "CARCINOMA DUCTAL IN SITU, DE BAJO GRADO, DE TIPO CRIBIFORME Y PAPILAR" NA "CARCINOMA LOBULILLAR" ...
## $ grado : chr [1:80] "III" "I" "III" "I" ...
## $ metodo : chr [1:80] "Ultrasonido" "Masto / Ultra" "Masto / Ultra" "Ultrasonido" ...
## $ Hallazgomast : chr [1:80] "NÓDULO" "DISTORSIÓN + NÓDULO" "DISTORSIÓN POSQX + CALCIFICACIONES / NODULO MASTO Y ULTRA INTRADUCTAL" "NÓDULO" ...
## $ formamast : chr [1:80] NA "IRREGULAR" "IRREGULAR" NA ...
## $ margenmast : chr [1:80] NA "OSCURECIDO" "ESPICULADO" NA ...
## $ densidadmast : chr [1:80] NA "ISODENSO" "ALTA" NA ...
## $ formault : chr [1:80] "IRREGULAR" "IRREGULAR" "IRREGULAR" "IRREGULAR" ...
## $ margenult : chr [1:80] "ANGULADO" "ANGULADO" "LOBULADO" "ANGULADO" ...
## $ ecogenicidad : chr [1:80] "HETEROGÉNEO" "HIPOECOICO" "HETEROGÉNEO" "HIPOECOICO" ...
## $ fenomno : chr [1:80] "NO" "SOMBRA" "NO" "SOMBRA" ...
## $ calcificaciones: chr [1:80] NA NA "PLEOMORFICAS" NA ...
## $ BIRADS : chr [1:80] "4" "4B" NA "4C" ...
DBDRAEDNAr<-DBDRAEDNAr %>% mutate(altogrado=recode(grado,`I` = 0, `II` = 0,
`III` = 1))
Se diseño un modelo con las variables relacionadas con el ultrasonido: forma ultrasonido, margenes, ecogenecidad y fenomno
encotrandose lo siguiente en el analisis multivariado, basado en graficos de bosque o forest plot:
library(finalfit)
DBDRAEDNAr$altogrado = as.numeric(DBDRAEDNAr$altogrado)
#todos
explanatory = c("formault","margenult","ecogenicidad","fenomno")
dependent = "altogrado"
DBDRAEDNAr %>% or_plot(dependent, explanatory, breaks = c(-0.5, 0, 10))
## Waiting for profiling to be done...
## Waiting for profiling to be done...
## Waiting for profiling to be done...
El análisis multivariable se muestra en la siguiente forma
explanatory_vars <- c("formault", "margenult", "ecogenicidad", "fenomno")
explanatory_vars %>% str_c("altogrado ~ ", .)
## [1] "altogrado ~ formault" "altogrado ~ margenult"
## [3] "altogrado ~ ecogenicidad" "altogrado ~ fenomno"
## run a regression with all variables of interest
mv_reg <- explanatory_vars %>% ## begin with vector of explanatory column names
str_c(collapse = "+") %>% ## combine all names of the variables of interest separated by a plus
str_c("altogrado ~ ", .) %>% ## combine the names of variables of interest with outcome in formula style
glm(family = "binomial", ## define type of glm as logistic,
data = DBDRAEDNAr) ## define your dataset
## choose a model using forward selection based on AIC
## you can also do "backward" or "both" by adjusting the direction
final_mv_reg <- mv_reg %>%
step(direction = "forward", trace = FALSE)
mv_tab_base <- final_mv_reg %>%
broom::tidy(exponentiate = TRUE, conf.int = TRUE) %>% ## get a tidy dataframe of estimates
mutate(across(where(is.numeric), round, digits = 2)) ## round
## show results table of final regression
mv_tab <- tbl_regression(final_mv_reg, exponentiate = TRUE)
#Looping multiple univariate models
library(broom)
models <- explanatory_vars %>% # begin with variables of interest
str_c("altogrado ~ ", .) %>% # combine each variable into formula ("outcome ~ variable of interest")
# iterate through each univariate formula
map(
.f = ~glm( # pass the formulas one-by-one to glm()
formula = as.formula(.x), # within glm(), the string formula is .x
family = "binomial", # specify type of glm (logistic)
data = DBDRAEDNAr)) %>% # dataset
# tidy up each of the glm regression outputs from above
map(
.f = ~tidy(
.x,
exponentiate = TRUE, # exponentiate
conf.int = TRUE)) %>% # return confidence intervals
# collapse the list of regression outputs in to one data frame
bind_rows() %>%
# round all numeric columns
mutate(across(where(is.numeric), round, digits = 2))
## for each explanatory variable
univ_tab_base <- explanatory_vars %>%
map(.f =
~{DBDRAEDNAr %>% ## begin with linelist
group_by(altogrado) %>% ## group data set by outcome
count(.data[[.x]]) %>% ## produce counts for variable of interest
pivot_wider( ## spread to wide format (as in cross-tabulation)
names_from = altogrado,
values_from = n) %>%
drop_na(.data[[.x]]) %>% ## drop rows with missings
rename("variable" = .x) %>% ## change variable of interest column to "variable"
mutate(variable = as.character(variable))} ## convert to character, else non-dichotomous (categorical) variables come out as factor and cant be merged
) %>%
## collapse the list of count outputs in to one data frame
bind_rows() %>%
## merge with the outputs of the regression
bind_cols(., models) %>%
## only keep columns interested in
select(term, 2:3, estimate, conf.low, conf.high, p.value) %>%
## round decimal places
mutate(across(where(is.numeric), round, digits = 2))
## Note: Using an external vector in selections is ambiguous.
## ℹ Use `all_of(.x)` instead of `.x` to silence this message.
## ℹ See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.
## This message is displayed once per session.
univ_tab <- DBDRAEDNAr %>%
dplyr::select(explanatory_vars, altogrado) %>% ## select variables of interest
tbl_uvregression( ## produce univariate table
method = glm, ## define regression want to run (generalised linear model)
y = altogrado, ## define outcome variable
method.args = list(family = binomial), ## define what type of glm want to run (logistic)
exponentiate = TRUE ## exponentiate to produce odds ratios (rather than log odds)
)
## Note: Using an external vector in selections is ambiguous.
## ℹ Use `all_of(explanatory_vars)` instead of `explanatory_vars` to silence this message.
## ℹ See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.
## This message is displayed once per session.
## combine with univariate results
tbl_merge(
tbls = list(univ_tab, mv_tab), # combine
tab_spanner = c("**univariable**", "**Multivariable**")) # set header names
| Characteristic | univariable | Multivariable | |||||
|---|---|---|---|---|---|---|---|
| N | OR1 | 95% CI1 | p-value | OR1 | 95% CI1 | p-value | |
| formault | 75 | ||||||
| irregular | — | — | — | — | |||
| IRREGULAR | 2,632,143 | 0.00, NA | >0.9 | 9,162,969 | 0.00, NA | >0.9 | |
| OVALADO | 3,290,179 | 0.00, NA | >0.9 | 6,321,910 | 0.00, NA | >0.9 | |
| OVOIDEO | 4,112,723 | 0.00, NA | >0.9 | 4,519,034 | 0.00, NA | >0.9 | |
| margenult | 74 | ||||||
| ANGULADO | — | — | — | — | |||
| CIRCUNSCRITO | 3.14 | 0.11, 86.9 | 0.4 | 154,807,345 | 0.00, NA | >0.9 | |
| ESPICULADO | 0.63 | 0.12, 2.67 | 0.5 | 0.54 | 0.09, 2.61 | 0.5 | |
| INDEFINIDO | 6.29 | 0.53, 148 | 0.2 | 5.02 | 0.39, 124 | 0.2 | |
| LOBULADO | 18,095,983 | 0.00, NA | >0.9 | 66,712,743 | 0.00, Inf | >0.9 | |
| MICROLOBULADO | 3.46 | 1.06, 12.1 | 0.044 | 7.31 | 1.48, 48.7 | 0.022 | |
| ecogenicidad | 74 | ||||||
| COMPLEJA | — | — | — | — | |||
| HETEROGÉNEO | 2.00 | 0.04, 120 | 0.7 | 1.15 | 0.01, 94.4 | >0.9 | |
| HIPOECOICO | 0.48 | 0.02, 12.5 | 0.6 | 0.29 | 0.01, 8.25 | 0.4 | |
| ISOECOICO | 0.00 | >0.9 | 0.00 | >0.9 | |||
| fenomno | 75 | ||||||
| NO | — | — | — | — | |||
| SOMBRA | 1.19 | 0.44, 3.29 | 0.7 | 2.46 | 0.60, 12.1 | 0.2 | |
| 1 OR = Odds Ratio, CI = Confidence Interval | |||||||