Ctrl+Alt+I / Cmd+Opt+I
Intalación de paquetes
Pacman: llama a otros paquetes y si no están los instala
if(!require(pacman))
install.packages("pacman")
## Cargando paquete requerido: pacman
## Warning: package 'pacman' was built under R version 4.4.3
Llamar a pacman
library("pacman")
Llamar paqueteria necesaria
p_load("vroom",
"dplyr",
"ggplot2",
"tidyr")
Llamar a base de datos
Curvas_amplif <- vroom(file = "https://raw.githubusercontent.com/ManuelLaraMVZ/resultados_PCR_practica/refs/heads/main/Amplif_grupo2_17022025.csv")
## Rows: 40 Columns: 7
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## dbl (7): Cycle, A1, B1, C1, D1, E1, H1
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
Curvas_amplif
## # A tibble: 40 × 7
## Cycle A1 B1 C1 D1 E1 H1
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 -131. -27.4 -23.5 -60.7 -20.0 -105.
## 2 2 -48.7 1.20 -3.27 -15.1 1.76 -30.5
## 3 3 -26.4 10.3 0.816 -6.85 6.51 2.07
## 4 4 -11.2 11.9 2.67 6.87 6.96 19.1
## 5 5 -5.55 13.1 0.968 7.74 5.78 19.0
## 6 6 -3.14 12.6 4.07 -0.518 1.02 13.7
## 7 7 -0.668 14.3 6.72 3.76 5.36 10.2
## 8 8 -4.14 17.8 3.89 -0.213 0.737 4.11
## 9 9 -6.77 14.0 -5.40 1.87 -0.664 4.03
## 10 10 -0.178 16.1 0.103 -1.38 -4.51 5.09
## # ℹ 30 more rows
Modificar base de datos
Curvas_amplif2 <- Curvas_amplif %>% #Ctrl/Cmnd+Shift+M
mutate(Ciclos = Cycle, Manuel = A1, Regina = B1, Marian = C1, Ricardo = D1, Neto = E1, Johan = H1) %>%
select(-Cycle:-H1) %>%
filter(Ciclos >=17)
Curvas_amplif2
## # A tibble: 24 × 7
## Ciclos Manuel Regina Marian Ricardo Neto Johan
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 17 3.05 33.9 45.0 15.5 -6.40 -2.47
## 2 18 -1.90 49.6 82.2 31.1 -6.78 -4.23
## 3 19 -4.91 84.6 151. 56.1 -7.36 -9.54
## 4 20 -6.37 118. 241. 92.6 -4.65 -13.1
## 5 21 -8.76 172. 413. 174. -5.39 -10.6
## 6 22 -4.11 232. 623. 265. -7.50 -12.7
## 7 23 2.24 301. 886. 391. -7.09 -11.2
## 8 24 -2.40 372. 1180. 526. -7.93 -22.4
## 9 25 -1.74 448. 1483. 675. -1.24 -15.7
## 10 26 2.70 519. 1771. 831. 4.20 -22.0
## # ℹ 14 more rows
Reordenamiento de datos
Seleccionar los datos a reordenar (variables dependientes).
Agruparé todas variables por nombre.
Agruparé todas las variables por ciclo.
Curvas_amplif3 <- Curvas_amplif2 %>%
pivot_longer(cols = -Ciclos,
names_to = "Muestras",
values_to = "Flourescencias")
Curvas_amplif3
## # A tibble: 144 × 3
## Ciclos Muestras Flourescencias
## <dbl> <chr> <dbl>
## 1 17 Manuel 3.05
## 2 17 Regina 33.9
## 3 17 Marian 45.0
## 4 17 Ricardo 15.5
## 5 17 Neto -6.40
## 6 17 Johan -2.47
## 7 18 Manuel -1.90
## 8 18 Regina 49.6
## 9 18 Marian 82.2
## 10 18 Ricardo 31.1
## # ℹ 134 more rowsGráfica
Grafica_amplif <- ggplot(data = Curvas_amplif3,
mapping = aes(x = Ciclos,
y = Flourescencias,
color = Muestras)) +
geom_line ( linewidth = 1.5)
Grafica_amplif
Mejorar la gráfica
Umbral_ciclos <- 0.008
Grafica_amplif2 <- Grafica_amplif +
geom_hline(yintercept = Umbral_ciclos, linetype = "dashed", color = "#581845")+
theme_classic()+
labs(title = "Curvas de amplificación RT-qPCR",
subtitle = "Bazo",
caption = "Diseño Johan Medina",
x = "Cilos",
y = "Fluorescencia (u.a.)")+
theme(axis.line = element_line (size = 1.2, color = "black"),
axis.title = element_text(face = "bold"),
axis.text = element_text(face = "bold"),
legend.title = element_text(face = "bold"),
legend.text = element_text(face = "bold"))+
scale_x_continuous(breaks = seq(min(Curvas_amplif3$Ciclos),
max(Curvas_amplif3$Ciclos),
by = 2))+
scale_y_continuous(breaks = seq(min(Curvas_amplif3$Flourescencias),
max(Curvas_amplif3$Flourescencias),
by = 200),
labels = scales::number_format(accuracy = 0.02))
## Warning: The `size` argument of `element_line()` is deprecated as of ggplot2 3.4.0.
## ℹ Please use the `linewidth` argument instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Grafica_amplif2
Grafica de los datos del equipo
Grafica_amplif_equipo <- ggplot(Curvas_amplif2, aes(x = Ciclos)) +
geom_line(aes(y = Johan, color = "Johan"), linewidth = 1.5) +
geom_line(aes(y = Manuel, color = "Manuel"), linewidth = 1.5) +
geom_hline(yintercept = Umbral_ciclos, linetype = "dashed", color = "#581845") +
scale_color_manual(values = c("Johan" = "#f03d04", "Manuel" = "#074fff")) +
theme_classic() +
labs(title = "Curvas de amplificación RT-qPCR",
subtitle = "Bazo",
caption = "Diseñó: Johan Medina",
x = "Ciclos",
y = "Fluorescencia (u.a.)",
color = "Muestras") + # Título de la leyenda
theme(axis.line = element_line(size = 1.2, color = "black"),
axis.title = element_text(face = "bold"),
axis.text = element_text(face = "bold"),
legend.title = element_text(face = "bold"),
legend.text = element_text(face = "bold")) +
scale_x_continuous(breaks = seq(min(Curvas_amplif2$Ciclos),
max(Curvas_amplif2$Ciclos),
by = 2)) +
scale_y_continuous(breaks = seq(min(Curvas_amplif2$Johan),
max(Curvas_amplif2$Johan),
by = 200),
labels = scales::number_format(accuracy = 0.02))
Grafica_amplif_equipo