Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
16 kB
2
Indexable
Never
library(readxl)
library(data.table)
#library(ggpubr)
library(readr)
library(stats)
library(formattable)
library(dplyr)
library(car)
library(ggplot2)
library(ggrepel)
library(xlsx)
options(scipen = 999)

df_3TG <- read_excel("proteomica/ejercicio/3-TG/230414F-LFQ-Phospho_OnlyPTM-(Filtradas).xlsx")
accesion_3TG<-df_3TG[,6]
abundancias_3TG<-df_3TG[,141:159]
abundancias_3TG[is.na(abundancias_3TG)] <- 0
colnam<-colnames(abundancias_3TG)
colnam <- gsub(".*F(\\d+).*", "\\1", colnam)
colnam <- paste("F", gsub("\\D+", "", colnam), sep = "")
colnames(abundancias_3TG) <- colnam

#crear el df y transponerla y modificar el nombre de las columnas y ponerlo en notacion cientifica
df_3TG<-cbind(accesion_3TG, abundancias_3TG)
df_3TG_transposed <- t(df_3TG)

options(scipen = 999)  
df_3TG_transposed<- apply(df_3TG_transposed, 2, function(x) format(x, scientific = FALSE))
colnames(df_3TG_transposed) <- as.character(df_3TG_transposed[1, ])
df_3TG_transposed <- df_3TG_transposed[-1, ]

df_3TG_transposed<-data.frame(df_3TG_transposed)
options(scipen = 999)  

sample_metadata_3TG <- read_delim("proteomica/ejercicio/3-TG/sample-metadata-3TG.csv", 
                                  delim = "\t", escape_double = FALSE, 
                                  trim_ws = TRUE)

prot_control_3TG <- sample_metadata_3TG %>%
  filter(experiment == "WT") %>%
  pull("sample-id")

tabla_control_3TG <- df_3TG%>%
  select(1, all_of(prot_control_3TG))


entera_5XFAD <- read_excel("proteomica/ejercicio/5XFAD/230223F-LFQ-Phospho_OnlyPTM_Incl-Isoforms_FILTRADAS.xlsx", 
                          )


#seleccionar la columna con el código de accesp y las columnas con la abundancia
#luego quiero quitarle toda la info al título para simplificarla ya que he prepaarado unos metadatos
df_5XFAD<-entera_5XFAD
accesion_5XFAD<-df_5XFAD[,6]

abundancias_5XFAD<-df_5XFAD[,121:135]
abundancias_5XFAD[is.na(abundancias_5XFAD)]
colnam<-colnames(abundancias_5XFAD)
colnam <- gsub(".*F(\\d+).*", "\\1", colnam)
colnam <- paste("F", gsub("\\D+", "", colnam), sep = "")
colnames(abundancias_5XFAD) <- colnam

#crear el df y transponerla y modificar el nombre de las columnas y ponerlo en notacion cientifica
df_5XFAD<-cbind(accesion_5XFAD, abundancias_5XFAD)

df_5XFAD_transposed <- t(df_5XFAD)

options(scipen = 999)  
df_transposed_5XFAD <- apply(df_5XFAD_transposed, 2, function(x) format(x, scientific = FALSE))
colnames(df_5XFAD_transposed) <- as.character(df_5XFAD_transposed[1, ])
df_5XFAD_transposed <- df_5XFAD_transposed[-1, ]

sample_metadata_5XFAD <- read_delim("proteomica/ejercicio/5XFAD/sample-metadata-5XFAD.csv", 
                                    delim = "\t", escape_double = FALSE, 
                                    trim_ws = TRUE)

prot_control_5XFAD <- sample_metadata_5XFAD %>%
  filter(experiment == "WT") %>%
  pull("sample-id")

tabla_control_5XFAD <- df_5XFAD%>%
  select(1, all_of(prot_control_5XFAD))



# Obtener las columnas de interés
columna_3TG <- tabla_control_3TG$Accession
columna_5XFAD <- tabla_control_5XFAD$Accession


# Encontrar los elementos comunes
elementos_comunes <- intersect(columna_3TG, columna_5XFAD)

# Crear un nuevo dataframe con los elementos comunes
comunes_df <- data.frame(comunes = elementos_comunes)

# Mostrar el dataframe de elementos comunes
print(comunes_df)


columna_3TG<-data_frame(columna_3TG)
columna_5XFAD<-data_frame(columna_5XFAD)

filas_unicas_3TG <- columna_3TG[!(columna_3TG$columna_3TG %in% columna_5XFAD$columna_5XFAD), , drop = FALSE]

# Filas únicas en columna_5XFAD que no están en columna_3TG
filas_unicas_5XFAD <- columna_5XFAD[!(columna_5XFAD$columna_5XFAD %in% columna_3TG$columna_3TG), , drop = FALSE]

nuevo_dataframe <- tabla_control_3TG[tabla_control_3TG$Accession %in% comunes_df$comunes, ]
comunes_control_3TG<-nuevo_dataframe

comunes_control_5XFAD<-tabla_control_5XFAD[tabla_control_5XFAD$Accession %in% comunes_df$comunes, ]

comunes_control_3TG[is.na(comunes_control_3TG)]<- 0
comunes_control_5XFAD[is.na(comunes_control_5XFAD)]<-0


new_index <- 1:nrow(comunes_control_3TG)
rownames(comunes_control_3TG) <- new_index
rownames(comunes_control_5XFAD) <- new_index

#calcular la media de los 5XFAD y hacer una tabla de la media repetida tantas veces como columnas tenga el dataframe
sumas <- rowSums(comunes_control_5XFAD[,-1])
suma_5XFAD <- data.frame(Suma = sumas)
a<-ncol(comunes_control_5XFAD)
a<-a-1
media_5XFAD<-(suma_5XFAD/a)

# Inicializar un dataframe vacío para almacenar los resultados
comunes_control_3TG_normalizado_numeros <- data.frame(matrix(ncol = ncol(comunes_control_3TG) - 1, nrow = nrow(comunes_control_3TG)))

# Copiar los nombres de las columnas del dataframe original
colnames(comunes_control_3TG_normalizado_numeros) <- colnames(comunes_control_3TG)[-1]


# Realizar la división fila a fila y columna a columna
for (i in 1:nrow(comunes_control_3TG)) {
  fila <- comunes_control_3TG[i, -1]
  for (j in 1:(ncol(comunes_control_3TG) - 1)) {
    resultado <- fila[j] / media_5XFAD[i, 1]
    comunes_control_3TG_normalizado_numeros[i, j] <- resultado
  }
}

# Inicializar un dataframe vacío para almacenar los resultados
comunes_control_5XFAD_normalizado_numeros <- data.frame(matrix(ncol = ncol(comunes_control_5XFAD) - 1, nrow = nrow(comunes_control_5XFAD)))

# Copiar los nombres de las columnas del dataframe original
colnames(comunes_control_5XFAD_normalizado_numeros) <- colnames(comunes_control_5XFAD)[-1]



# Realizar la división fila a fila y columna a columna
for (i in 1:nrow(comunes_control_5XFAD)) {
  fila <- comunes_control_5XFAD[i, -1]
  for (j in 1:(ncol(comunes_control_5XFAD) - 1)) {
    resultado <- fila[j] / media_5XFAD[i, 1]
    comunes_control_5XFAD_normalizado_numeros[i, j] <- resultado
  }
}

comunes_control_5XFAD_normalizado<-cbind(comunes_control_5XFAD[,1], comunes_control_5XFAD_normalizado_numeros)
comunes_control_3TG_normalizado<-cbind(comunes_control_3TG[,1], comunes_control_3TG_normalizado_numeros)
#Calcular normalidad en ambos y ver cuantos la cumplen
#resultado del número de proteinas que no siguen normalifad
c <- vector()
for (i in 1:nrow(comunes_control_3TG_normalizado_numeros)) {
  fila <- as.numeric(comunes_control_3TG_normalizado_numeros[i, ])
  resultado <- shapiro.test(fila)
  c[i] <- resultado$p.value
}
num_valores_menor_0_05 <- sum(c < 0.05)

print(num_valores_menor_0_05)

d <- vector()
for (i in 1:nrow(comunes_control_5XFAD_normalizado_numeros)) {
  fila <- as.numeric(comunes_control_5XFAD_normalizado_numeros[i, ])
  resultado <- shapiro.test(fila)
  d[i] <- resultado$p.value
}
num_valores_menor_0_05 <- sum(d < 0.05)library(readxl)
library(data.table)
#library(ggpubr)
library(readr)
library(stats)
library(formattable)
library(dplyr)
library(car)
library(ggplot2)
library(ggrepel)
library(xlsx)
options(scipen = 999)

df_3TG <- read_excel("proteomica/ejercicio/3-TG/230414F-LFQ-Phospho_OnlyPTM-(Filtradas).xlsx")
accesion_3TG<-df_3TG[,6]
abundancias_3TG<-df_3TG[,141:159]
abundancias_3TG[is.na(abundancias_3TG)] <- 0
colnam<-colnames(abundancias_3TG)
colnam <- gsub(".*F(\\d+).*", "\\1", colnam)
colnam <- paste("F", gsub("\\D+", "", colnam), sep = "")
colnames(abundancias_3TG) <- colnam

#crear el df y transponerla y modificar el nombre de las columnas y ponerlo en notacion cientifica
df_3TG<-cbind(accesion_3TG, abundancias_3TG)
df_3TG_transposed <- t(df_3TG)

options(scipen = 999)  
df_3TG_transposed<- apply(df_3TG_transposed, 2, function(x) format(x, scientific = FALSE))
colnames(df_3TG_transposed) <- as.character(df_3TG_transposed[1, ])
df_3TG_transposed <- df_3TG_transposed[-1, ]

df_3TG_transposed<-data.frame(df_3TG_transposed)
options(scipen = 999)  

sample_metadata_3TG <- read_delim("proteomica/ejercicio/3-TG/sample-metadata-3TG.csv", 
                                  delim = "\t", escape_double = FALSE, 
                                  trim_ws = TRUE)

prot_control_3TG <- sample_metadata_3TG %>%
  filter(experiment == "WT") %>%
  pull("sample-id")

tabla_control_3TG <- df_3TG%>%
  select(1, all_of(prot_control_3TG))


entera_5XFAD <- read_excel("proteomica/ejercicio/5XFAD/230223F-LFQ-Phospho_OnlyPTM_Incl-Isoforms_FILTRADAS.xlsx", 
                          )


#seleccionar la columna con el código de accesp y las columnas con la abundancia
#luego quiero quitarle toda la info al título para simplificarla ya que he prepaarado unos metadatos
df_5XFAD<-entera_5XFAD
accesion_5XFAD<-df_5XFAD[,6]

abundancias_5XFAD<-df_5XFAD[,121:135]
abundancias_5XFAD[is.na(abundancias_5XFAD)]
colnam<-colnames(abundancias_5XFAD)
colnam <- gsub(".*F(\\d+).*", "\\1", colnam)
colnam <- paste("F", gsub("\\D+", "", colnam), sep = "")
colnames(abundancias_5XFAD) <- colnam

#crear el df y transponerla y modificar el nombre de las columnas y ponerlo en notacion cientifica
df_5XFAD<-cbind(accesion_5XFAD, abundancias_5XFAD)

df_5XFAD_transposed <- t(df_5XFAD)

options(scipen = 999)  
df_transposed_5XFAD <- apply(df_5XFAD_transposed, 2, function(x) format(x, scientific = FALSE))
colnames(df_5XFAD_transposed) <- as.character(df_5XFAD_transposed[1, ])
df_5XFAD_transposed <- df_5XFAD_transposed[-1, ]

sample_metadata_5XFAD <- read_delim("proteomica/ejercicio/5XFAD/sample-metadata-5XFAD.csv", 
                                    delim = "\t", escape_double = FALSE, 
                                    trim_ws = TRUE)

prot_control_5XFAD <- sample_metadata_5XFAD %>%
  filter(experiment == "WT") %>%
  pull("sample-id")

tabla_control_5XFAD <- df_5XFAD%>%
  select(1, all_of(prot_control_5XFAD))



# Obtener las columnas de interés
columna_3TG <- tabla_control_3TG$Accession
columna_5XFAD <- tabla_control_5XFAD$Accession


# Encontrar los elementos comunes
elementos_comunes <- intersect(columna_3TG, columna_5XFAD)

# Crear un nuevo dataframe con los elementos comunes
comunes_df <- data.frame(comunes = elementos_comunes)

# Mostrar el dataframe de elementos comunes
print(comunes_df)


columna_3TG<-data_frame(columna_3TG)
columna_5XFAD<-data_frame(columna_5XFAD)

filas_unicas_3TG <- columna_3TG[!(columna_3TG$columna_3TG %in% columna_5XFAD$columna_5XFAD), , drop = FALSE]

# Filas únicas en columna_5XFAD que no están en columna_3TG
filas_unicas_5XFAD <- columna_5XFAD[!(columna_5XFAD$columna_5XFAD %in% columna_3TG$columna_3TG), , drop = FALSE]

nuevo_dataframe <- tabla_control_3TG[tabla_control_3TG$Accession %in% comunes_df$comunes, ]
comunes_control_3TG<-nuevo_dataframe

comunes_control_5XFAD<-tabla_control_5XFAD[tabla_control_5XFAD$Accession %in% comunes_df$comunes, ]

comunes_control_3TG[is.na(comunes_control_3TG)]<- 0
comunes_control_5XFAD[is.na(comunes_control_5XFAD)]<-0


new_index <- 1:nrow(comunes_control_3TG)
rownames(comunes_control_3TG) <- new_index
rownames(comunes_control_5XFAD) <- new_index

#calcular la media de los 5XFAD y hacer una tabla de la media repetida tantas veces como columnas tenga el dataframe
sumas <- rowSums(comunes_control_5XFAD[,-1])
suma_5XFAD <- data.frame(Suma = sumas)
a<-ncol(comunes_control_5XFAD)
a<-a-1
media_5XFAD<-(suma_5XFAD/a)

# Inicializar un dataframe vacío para almacenar los resultados
comunes_control_3TG_normalizado_numeros <- data.frame(matrix(ncol = ncol(comunes_control_3TG) - 1, nrow = nrow(comunes_control_3TG)))

# Copiar los nombres de las columnas del dataframe original
colnames(comunes_control_3TG_normalizado_numeros) <- colnames(comunes_control_3TG)[-1]


# Realizar la división fila a fila y columna a columna
for (i in 1:nrow(comunes_control_3TG)) {
  fila <- comunes_control_3TG[i, -1]
  for (j in 1:(ncol(comunes_control_3TG) - 1)) {
    resultado <- fila[j] / media_5XFAD[i, 1]
    comunes_control_3TG_normalizado_numeros[i, j] <- resultado
  }
}

# Inicializar un dataframe vacío para almacenar los resultados
comunes_control_5XFAD_normalizado_numeros <- data.frame(matrix(ncol = ncol(comunes_control_5XFAD) - 1, nrow = nrow(comunes_control_5XFAD)))

# Copiar los nombres de las columnas del dataframe original
colnames(comunes_control_5XFAD_normalizado_numeros) <- colnames(comunes_control_5XFAD)[-1]



# Realizar la división fila a fila y columna a columna
for (i in 1:nrow(comunes_control_5XFAD)) {
  fila <- comunes_control_5XFAD[i, -1]
  for (j in 1:(ncol(comunes_control_5XFAD) - 1)) {
    resultado <- fila[j] / media_5XFAD[i, 1]
    comunes_control_5XFAD_normalizado_numeros[i, j] <- resultado
  }
}

comunes_control_5XFAD_normalizado<-cbind(comunes_control_5XFAD[,1], comunes_control_5XFAD_normalizado_numeros)
comunes_control_3TG_normalizado<-cbind(comunes_control_3TG[,1], comunes_control_3TG_normalizado_numeros)
#Calcular normalidad en ambos y ver cuantos la cumplen
#resultado del número de proteinas que no siguen normalifad
c <- vector()
for (i in 1:nrow(comunes_control_3TG_normalizado_numeros)) {
  fila <- as.numeric(comunes_control_3TG_normalizado_numeros[i, ])
  resultado <- shapiro.test(fila)
  c[i] <- resultado$p.value
}
num_valores_menor_0_05 <- sum(c < 0.05)

print(num_valores_menor_0_05)

d <- vector()
for (i in 1:nrow(comunes_control_5XFAD_normalizado_numeros)) {
  fila <- as.numeric(comunes_control_5XFAD_normalizado_numeros[i, ])
  resultado <- shapiro.test(fila)
  d[i] <- resultado$p.value
}
num_valores_menor_0_05 <- sum(d < 0.05)

print(num_valores_menor_0_05)


#T-student 
#resultado 246 proteinas con diferencias


p_valor_controles <- c()
for (i in 1:nrow(comunes_control_3TG_normalizado_numeros)) {
  valores_3TG<- as.numeric(comunes_control_3TG_normalizado_numeros[i, ])
  valores_5XFAD <- as.numeric(comunes_control_5XFAD_normalizado_numeros[i, ])
  resultado_t_test <- t.test(valores_3TG, valores_5XFAD)
  p_valor_controles<-c(p_valor_controles, resultado_t_test$p.value)
}
resultado_final_test<-data.frame(comunes_control_3TG[,1], p_value = p_valor_controles)

num_valores_menor_0_05 <- sum(resultado_final_test[,2] < 0.05)

print(num_valores_menor_0_05)

#Calcular media y desviaciones típicas

sumas <- rowSums(comunes_control_5XFAD_normalizado_numeros[,-1])
suma_5XFAD_n <- data.frame(Suma = sumas)
a<-ncol(comunes_control_5XFAD)
a<-a-1
media_5XFAD_n<-(suma_5XFAD_n/a)

sumas <- rowSums(comunes_control_3TG_normalizado_numeros[,-1])
suma_3TG_n <- data.frame(Suma = sumas)
b<-ncol(comunes_control_3TG)
b<-b-1
media_3TG_n<-(suma_3TG_n/b)

cociente<-media_3TG_n/media_5XFAD_n
log2cociente<-apply(cociente, 1, log2)
log2cociente<-data_frame(log2cociente)

p_valor_controles<-data_frame(p_valor_controles)
log10pvalor<-apply(p_valor_controles, 1, log10)
log10pvalor<-data_frame(log10pvalor)
log10pvalor<-apply(log10pvalor, 1, function(x) -x)
log10pvalor<-data_frame(log10pvalor)


vulcanot<-data_frame(comunes_control_5XFAD[,1], log2cociente, log10pvalor)

print(num_valores_menor_0_05)


#T-student 
#resultado 246 proteinas con diferencias


p_valor_controles <- c()
for (i in 1:nrow(comunes_control_3TG_normalizado_numeros)) {
  valores_3TG<- as.numeric(comunes_control_3TG_normalizado_numeros[i, ])
  valores_5XFAD <- as.numeric(comunes_control_5XFAD_normalizado_numeros[i, ])
  resultado_t_test <- t.test(valores_3TG, valores_5XFAD)
  p_valor_controles<-c(p_valor_controles, resultado_t_test$p.value)
}
resultado_final_test<-data.frame(comunes_control_3TG[,1], p_value = p_valor_controles)

num_valores_menor_0_05 <- sum(resultado_final_test[,2] < 0.05)

print(num_valores_menor_0_05)

#Calcular media y desviaciones típicas

sumas <- rowSums(comunes_control_5XFAD_normalizado_numeros[,-1])
suma_5XFAD_n <- data.frame(Suma = sumas)
a<-ncol(comunes_control_5XFAD)
a<-a-1
media_5XFAD_n<-(suma_5XFAD_n/a)

sumas <- rowSums(comunes_control_3TG_normalizado_numeros[,-1])
suma_3TG_n <- data.frame(Suma = sumas)
b<-ncol(comunes_control_3TG)
b<-b-1
media_3TG_n<-(suma_3TG_n/b)

cociente<-media_3TG_n/media_5XFAD_n
log2cociente<-apply(cociente, 1, log2)
log2cociente<-data_frame(log2cociente)

p_valor_controles<-data_frame(p_valor_controles)
log10pvalor<-apply(p_valor_controles, 1, log10)
log10pvalor<-data_frame(log10pvalor)
log10pvalor<-apply(log10pvalor, 1, function(x) -x)
log10pvalor<-data_frame(log10pvalor)


vulcanot<-data_frame(comunes_control_5XFAD[,1], log2cociente, log10pvalor)