Se realizara un ejemplo de análisis de datos Para sacar chunks es : Ctrl + alt + i
install.packages("pacman")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library("pacman")
p_load ("ggplot2", # para graficar
"dplyr", #para facilitar el manejo de datos
"vroom") #llamar repositorios
Llamar a bases de datos
Datos_PCR <- vroom(file="https://raw.githubusercontent.com/ManuelLaraMVZ/resultados_PCR_practica/refs/heads/main/Genes.csv")
## Rows: 7 Columns: 7
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Gen
## dbl (6): C1, C2, C3, T1, T2, T3
##
## ℹ 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.
Datos_PCR
## # A tibble: 7 × 7
## Gen C1 C2 C3 T1 T2 T3
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 B-actina 19 19.5 18.9 18.5 18.8 18.2
## 2 PIF1 22.4 22 21 28 28.2 27.9
## 3 PLK1 22 21.8 21.6 21.7 21 21.5
## 4 CCNB1 30.1 31.2 30.8 25.2 25.2 25.3
## 5 PCNA 20 20.3 20.2 24 24.2 NA
## 6 CCNB2 33 NA 33.1 24 25 26
## 7 BRCA 21 20.5 20.4 19.1 19.2 19.5
Aislar los genes de referencia
Gen_ref <- Datos_PCR %>%
filter(Gen =="B-actina")
Gen_ref
## # A tibble: 1 × 7
## Gen C1 C2 C3 T1 T2 T3
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 B-actina 19 19.5 18.9 18.5 18.8 18.2
Generar base de datos con genes de interes
Gen_int <- Datos_PCR %>%
filter(Gen != "B-actina")
Gen_int
## # A tibble: 6 × 7
## Gen C1 C2 C3 T1 T2 T3
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 PIF1 22.4 22 21 28 28.2 27.9
## 2 PLK1 22 21.8 21.6 21.7 21 21.5
## 3 CCNB1 30.1 31.2 30.8 25.2 25.2 25.3
## 4 PCNA 20 20.3 20.2 24 24.2 NA
## 5 CCNB2 33 NA 33.1 24 25 26
## 6 BRCA 21 20.5 20.4 19.1 19.2 19.5
Análisis
DCT <- Gen_int %>%
mutate(DC1 = C1- Gen_ref$C1,
DC2 = C2- Gen_ref$C2,
DC3 = C3- Gen_ref$C3,
DT1 = T1- Gen_ref$T1,
DT2 = T2- Gen_ref$T2,
DT3 = T3- Gen_ref$T3) %>%
mutate(DosDCTC1=2^-DC1,
DosDCTC2=2^-DC2,
DosDCTC3=2^-DC3,
DosDCTT1=2^-DT1,
DosDCTT2=2^-DT2,
DosDCTT3=2^-DT3) %>%
mutate(DosDCTCx = (DosDCTC1+DosDCTC2+DosDCTC3)/3,
DosDCTTx =(DosDCTT1+DosDCTT2+DosDCTT3)/3) %>%
mutate(DosDDCT = DosDCTTx/DosDCTCx)
DCT
## # A tibble: 6 × 22
## Gen C1 C2 C3 T1 T2 T3 DC1 DC2 DC3 DT1 DT2 DT3
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 PIF1 22.4 22 21 28 28.2 27.9 3.4 2.5 2.08 9.5 9.45 9.7
## 2 PLK1 22 21.8 21.6 21.7 21 21.5 3 2.3 2.68 3.2 2.25 3.3
## 3 CCNB1 30.1 31.2 30.8 25.2 25.2 25.3 11.1 11.7 11.9 6.7 6.45 7.1
## 4 PCNA 20 20.3 20.2 24 24.2 NA 1 0.800 1.28 5.5 5.45 NA
## 5 CCNB2 33 NA 33.1 24 25 26 14 NA 14.2 5.5 6.25 7.8
## 6 BRCA 21 20.5 20.4 19.1 19.2 19.5 2 1 1.48 0.600 0.450 1.3
## # ℹ 9 more variables: DosDCTC1 <dbl>, DosDCTC2 <dbl>, DosDCTC3 <dbl>,
## # DosDCTT1 <dbl>, DosDCTT2 <dbl>, DosDCTT3 <dbl>, DosDCTCx <dbl>,
## # DosDCTTx <dbl>, DosDDCT <dbl>
Aislar datos
Datos_gráfica <- DCT %>%
select("Gen","DosDDCT")
Datos_gráfica
## # A tibble: 6 × 2
## Gen DosDDCT
## <chr> <dbl>
## 1 PIF1 0.00790
## 2 PLK1 0.869
## 3 CCNB1 27.7
## 4 PCNA NA
## 5 CCNB2 NA
## 6 BRCA 1.62
Gráfica
Gráfica_PCR <- ggplot(Datos_gráfica,
aes(x=Gen,
y=DosDDCT))+
geom_col()+
theme_classic()
Gráfica_PCR
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_col()`).
Gráfica regresión lineal
Datos_regresión <- DCT %>%
select("Gen", DosDCTCx, DosDCTTx)
Datos_regresión
## # A tibble: 6 × 3
## Gen DosDCTCx DosDCTTx
## <chr> <dbl> <dbl>
## 1 PIF1 0.169 0.00134
## 2 PLK1 0.161 0.140
## 3 CCNB1 0.000340 0.00945
## 4 PCNA 0.495 NA
## 5 CCNB2 NA 0.0132
## 6 BRCA 0.369 0.599
Gráficar regresión
Gráfica_regresión <- ggplot(Datos_regresión,
aes(x = DosDCTCx,
y = DosDCTTx)) +
geom_point()
Gráfica_regresión
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_point()`).
graficar
Gráfica_regresión <- ggplot(Datos_regresión,
aes(x = DosDCTCx, y = DosDCTTx)) +
geom_point(color = "steelblue", size = 3, alpha = 0.7) + # puntos más claros
geom_smooth(method = "lm", se = FALSE, color = "darkred") + # regresión lineal ajustada
geom_abline(intercept = 0, slope = 1, # lÃnea pendiente 1
color = "forestgreen", linetype = "dashed", size = 1.2) +
labs(title = "Relación entre DosDCTCx y DosDCTTx",
subtitle = "Con regresión lineal y lÃnea de pendiente 1",
x = "DosDCTCx",
y = "DosDCTTx") +
theme_minimal(base_size = 14) +
theme(plot.title = element_text(face = "bold", hjust = 0.5),
plot.subtitle = element_text(hjust = 0.5))
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Gráfica_regresión
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 2 rows containing non-finite outside the scale range
## (`stat_smooth()`).
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_point()`).