Se realizará un ejemplo de análisis de datos - chunk es igual a Ctrl + Alt + I

install.packages("pacman") #es un paquete que llama a otros paquetes t si no esta no se instala
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library ("pacman") #esta funciion llama al paquere instalado
p_load("ggplot2" , #para graficar
       "dplyr", #para facilitar el manejo de datos
       "vroom") #llamar repositorios

Llamar a base 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.

aislar los genes de referencia para cada condicion

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 interés

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, 
          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_grafica <- DCT %>% 
  select("Gen", "DosDDCT")
datos_grafica
## # 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

Grafica_PCR <- ggplot(datos_grafica,
                      aes(x=Gen,
                          y=DosDDCT)) +
  geom_col()+theme_classic()

Grafica_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

Graficar regresiĂłn

Gráfica_regresión <- ggplot(Datos_regresión, 
                            aes(x = DosDCTCx, y = DosDCTTx)) +
  geom_point(color = "steelblue", size = 3, alpha = 0.7) +     # puntos
  geom_smooth(method = "lm", se = FALSE, color = "darkred") +  # regresiĂłn 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 ajustada 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 per session.
## 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()`).