This is an R Markdown document for the 2D maps pipeline.
The input files required are:
config.csv
miRNA/mRNAs in separate csv files
Sample config.csv is present in: DSRG4new1/2Dmaps/files
conf = read.csv("config.csv", header = F)
print(conf)
## V1 V2
## 1 miRNA_file miRNAs.csv
## 2 mRNA_file invasion_genelist.csv
## 3 correlationWith both
## 4 correlationType negative
## 5 correlationCoefficient 0.5
#miRNA_file: filename.csv for miRNAs of interest
#mRNA_file: filename.csv for mRNAs/proteins of interest
#correlationWith: filtering criteria for miRNA correlation with either "mRNA", "protein", "both" or "either".
#correlationType: either "postive" or "negative"
#correlationCoefficient: correlation coefficient threshold
#The meta matrix file is placed at: DSRG4new1/2Dmaps/files
data = readRDS("miRNA-mRNA-protein7.rds")
print(paste0("Total interactions: ", nrow(data)))
## [1] "Total interactions: 640019"
if(is.na(conf[1,2])){
print("No miRNAs of interest provided")
} else {
miRNAs = read.csv(as.character(conf[1,2]))
data = subset(data, (data$hsa_mir %in% miRNAs[,1]))
print(paste0("miRNA filtered interactions: ", nrow(data)))
}
## [1] "miRNA filtered interactions: 1184"
if(is.na(conf[2,2])){
print("No mRNAs of interest provided")
} else {
mRNAs = read.csv(as.character(conf[2,2]))
data = subset(data, (data$mRNA %in% mRNAs[,1]) | (data$protein %in% mRNAs[,1]))
print(paste0("mRNA/protein filtered interactions: ", nrow(data)))
}
## [1] "mRNA/protein filtered interactions: 158"
if(is.na(conf[3,2])){
print("No correlation filtering done")
} else {
if(conf[3,2] == "mRNA"){
if(conf[4,2] == "negative"){
if(is.na(conf[5,2])){
data = subset(data, data$correlationmRNA < 0)
} else {
data = subset(data, data$correlationmRNA < as.numeric(conf[5,2]))
}
} else {
if(is.na(conf[5,2])){
data = subset(data, data$correlationmRNA > 0)
} else {
data = subset(data, data$correlationmRNA > as.numeric(conf[5,2]))
}
}
print(paste0("mRNA correlation filtered interactions: ", nrow(data)))
}
if(conf[3,2] == "protein"){
if(conf[4,2] == "negative"){
if(is.na(conf[5,2])){
data = subset(data, data$correlationProtein < 0)
} else {
data = subset(data, data$correlationProtein < as.numeric(conf[5,2]))
}
} else {
if(is.na(conf[5,2])){
data = subset(data, data$correlationProtein > 0)
} else {
data = subset(data, data$correlationProtein > as.numeric(conf[5,2]))
}
}
print(paste0("protein correlation filtered interactions: ", nrow(data)))
}
if(conf[3,2] == "both"){
if(conf[4,2] == "negative"){
if(is.na(conf[5,2])){
data = subset(data, (data$correlationProtein < 0) & (data$correlationmRNA < 0))
} else {
data = subset(data, (data$correlationProtein < as.numeric(conf[5,2])) & (data$correlationmRNA < as.numeric(conf[5,2])))
}
} else {
if(is.na(conf[5,2])){
data = subset(data, (data$correlationProtein > 0) & (data$correlationmRNA > 0))
} else {
data = subset(data, data$correlationProtein > as.numeric(conf[5,2]) & (data$correlationmRNA > as.numeric(conf[5,2])))
}
}
print(paste0("mRNA + protein correlation filtered interactions: ", nrow(data)))
}
if(conf[3,2] == "either"){
if(conf[4,2] == "negative"){
if(is.na(conf[5,2])){
data = subset(data, (data$correlationProtein < 0) | (data$correlationmRNA < 0))
} else {
data = subset(data, (data$correlationProtein < as.numeric(conf[5,2])) | (data$correlationmRNA < as.numeric(conf[5,2])))
}
} else {
if(is.na(conf[5,2])){
data = subset(data, (data$correlationProtein > 0) | (data$correlationmRNA > 0))
} else {
data = subset(data, data$correlationProtein > as.numeric(conf[5,2]) | (data$correlationmRNA > as.numeric(conf[5,2])))
}
}
print(paste0("mRNA + protein correlation filtered interactions: ", nrow(data)))
}
}
## [1] "mRNA + protein correlation filtered interactions: 148"
data = subset(data, !is.na(data$functionalMTI))
print(paste0("Experimentally validated interactions: ", nrow(data)))
## [1] "Experimentally validated interactions: 18"
write.csv(data, file = "filteredInteractions.csv", row.names = F)