Luminal A tumors are characterized by the presence of ER and/or PR and the absence of HER2, and have a low expression of cell proliferation marker Ki-67 (less than 20%) (https://www.ncbi.nlm.nih.gov/books/NBK583808). Clinically they are low grade, slow growing, and have the best prognosis with less incidence of relapse and higher survival rate.
Luminal B tumors are of higher grade and worse prognosis compared to Luminal A. They are ER positive and can be PR negative and have a high expression of Ki67 (greater than 20%) (https://www.ncbi.nlm.nih.gov/books/NBK583808). They are generally of intermediate/high histologic grade. These tumors may benefit from hormonal therapy along with chemotherapy. The elevated Ki67 makes them grow faster than luminal A and worse prognosis.
The HER2-positive group constitutes 10–15% of breast cancers and is characterized by high HER2 expression with absence of ER and PR. They grow faster than the luminal ones and the prognosis has improved after the introduction of HER2-targeted therapies. The HER2-positive subtype is more aggressive and fast-growing. Within this, two subgroups can be distinguished: luminal HER2 (E+, PR+, HER2+ and Ki-67:15–30%) and HER2-enriched (HER2+, E-, PR-, Ki-67>30%) (https://www.ncbi.nlm.nih.gov/books/NBK583808). They have a worse prognosis compared to luminal tumors
Triple-negative breast cancer is ER-negative, PR-negative, and HER2-negative (https://www.ncbi.nlm.nih.gov/books/NBK583808). They constitute about 20% of all breast cancers. It is most common among women under 40 years of age, and in African-American women. The TNBC subtype is further classified into several additional subgroups including basal-like (BL1 and BL2), claudin-low, mesenchymal (MES), luminal androgen receptor (LAR), and immunomodulatory (IM), the first two being the most frequent with 50–70% and 20–30% of cases. Moreover, each of these has unique clinical outcomes, phenotypes, and pharmacological sensitivities. TNBC presents an aggressive behavior and 80% of breast cancer tumors (tumor suppressor gene BRCA1 and BRCA2) belong to this group.
##Gene differential expression analysis
cancer_type = "TCGA-BRCA"
library(TCGAbiolinks)
library(ggplot2)
library(MultiAssayExperiment)
library(dplyr)
library(openxlsx)
Download gene Primary tumor and Solid Tissue Normal Data
# Download tumor sample Gene expression
query_exp_tumor <- GDCquery(
project = cancer_type,
data.category = "Transcriptome Profiling",
data.type = "Gene Expression Quantification",
workflow.type = "STAR - Counts",
sample.type = c("Primary Tumor")
)
GDCdownload(query_exp_tumor)
exp_tumor <- GDCprepare(
query = query_exp_tumor
)
# Download normal sample Gene expression
query_exp_normal <- GDCquery(
project = cancer_type,
data.category = "Transcriptome Profiling",
data.type = "Gene Expression Quantification",
workflow.type = "STAR - Counts",
sample.type = c("Solid Tissue Normal")
)
GDCdownload(query_exp_normal)
exp_normal <- GDCprepare(
query = query_exp_normal
)
Pull BRCA subtype data
subtype = "LumB"
clinical_data <- GDCquery_clinic(project = "TCGA-BRCA", type = "clinical")
metadata <- colData(exp_tumor) # contains dataframe with PAM50 tumor classifications and other clinical data for each sample
subtype_samples <- metadata[!is.na(metadata$paper_BRCA_Subtype_PAM50) & metadata$paper_BRCA_Subtype_PAM50 == subtype,]
# It is important to note that sample ids in exp_tumor is large ids with extra characters and samples$bcr_patient_barcode
# has tructued id format. Therefore to match these and pull subtype sample expression data, we need following
matched_columns <- sapply(colnames(exp_tumor), function(column_name) {
any(sapply(subtype_samples$bcr_patient_barcode, function(truncated_id) {
grepl(truncated_id, column_name)
}))
})
exp_tumor_subtype <- exp_tumor[, matched_columns]
dim(exp_tumor_subtype)
## [1] 60660 209
Here, we have total 209 LumB samples downloaded from TCGA.
###Data preprocessing Remove low correlated outlier samples
exp_preprocessed_tumor <- TCGAanalyze_Preprocessing(
object = exp_tumor_subtype,
cor.cut = 0.4,
datatype = "unstranded",
filename = "correlation_tumor.png"
)
## Number of outliers: 0
dim(exp_preprocessed_tumor)
## [1] 60660 209
This step found 0 samples with low correlation (cor.cut = 0.4) that can be identified as possible outliers. Image below shows that most of the samples have correlation ~0.8 or higher.
knitr::include_graphics("correlation_tumor.png")
Lets do the same for Solid Tissue Normal samples
exp_preprocessed_normal <- TCGAanalyze_Preprocessing(
object = exp_normal,
cor.cut = 0.4,
datatype = "unstranded",
filename = "correlation_normal.png"
)
## Number of outliers: 0
knitr::include_graphics("correlation_normal.png")
Normalize data using gc content
exp_normalized <- TCGAanalyze_Normalization(
tabDF = cbind(exp_preprocessed_tumor, exp_preprocessed_normal),
geneInfo = TCGAbiolinks::geneInfoHT,
method = "gcContent"
)
## I Need about 244 seconds for this Complete Normalization Upper Quantile [Processing 80k elements /s]
## Step 1 of 4: newSeqExpressionSet ...
## Step 2 of 4: withinLaneNormalization ...
## Step 3 of 4: betweenLaneNormalization ...
## Step 4 of 4: .quantileNormalization ...
Filter out genes with extremely low expression
exp_filtered <- TCGAanalyze_Filtering(
tabDF = exp_normalized,
method = "quantile",
qnt.cut = 0.05
)
dim(exp_normalized)
## [1] 60513 322
dim(exp_filtered)
## [1] 54314 322
Save filtered data
saveRDS(exp_filtered, file = paste(paste("exp_filtered", subtype, sep="_"), "rds", sep = "."))
Pull Tumor and Normal data from exp_filtered
exp_filtered_tumor <- exp_filtered[
,colnames(exp_filtered) %in% colnames(exp_tumor_subtype)
]
saveRDS(exp_filtered_tumor, file = paste(paste("exp_filtered_tumor", subtype, sep="_"), "rds", sep = "."))
exp_filtered_normal <- exp_filtered[
,colnames(exp_filtered) %in% colnames(exp_normal)
]
saveRDS(exp_filtered_normal, file = paste(paste("exp_filtered_normal", subtype, sep="_"), "rds", sep = "."))
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 11095909 592.6 19649984 1049.5 19649984 1049.5
## Vcells 478035476 3647.2 1301183194 9927.3 2033098739 15511.4
rm(exp_normal)
rm(exp_tumor)
rm(exp_normalized)
rm(exp_filtered)
Free memory
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 11092397 592.4 19649984 1049.5 19649984 1049.5
## Vcells 106091870 809.5 1040946556 7941.8 2033098739 15511.4
rm(exp_filtered)
## Warning in rm(exp_filtered): object 'exp_filtered' not found
rm(exp_normal)
## Warning in rm(exp_normal): object 'exp_normal' not found
rm(exp_tumor)
## Warning in rm(exp_tumor): object 'exp_tumor' not found
rm(exp_preprocessed_normal)
rm(exp_preprocessed_tumor)
###Run gene differential expression test
diff_expressed_genes <- TCGAanalyze_DEA(
mat1 = exp_filtered_normal,
mat2 = exp_filtered_tumor,
Cond1type = "Normal",
Cond2type = "Tumor",
fdr.cut = 0.05 ,
logFC.cut = 0,
method = "glmLRT"
)
## Batch correction skipped since no factors provided
## ----------------------- DEA -------------------------------
## o 113 samples in Cond1type Normal
## o 209 samples in Cond2type Tumor
## o 54314 features as miRNA or genes
## This may take some minutes...
## ----------------------- END DEA -------------------------------
# Sort the diff_expressed_genes data frame by logFC in descending order to get the genes with the highest fold changes first
sorted_diff_expressed_genes <- diff_expressed_genes %>% arrange(desc(logFC))
file_path <- paste(paste("diff_expressed_genes", subtype, sep="_"), "xlsx", sep=".")
write.xlsx(sorted_diff_expressed_genes, file = file_path)
Print top 10 Upregulated genes and lncRNAs
head(sorted_diff_expressed_genes, 10)
## logFC logCPM LR PValue FDR
## ENSG00000244461 11.463760 2.1388914 34.84264 3.574575e-09 1.202462e-08
## ENSG00000248330 10.523567 0.3839246 54.07068 1.934060e-13 8.390298e-13
## ENSG00000286775 10.353079 1.5154950 21.44658 3.638248e-06 9.799059e-06
## ENSG00000204710 9.953572 1.0781424 106.00050 7.371648e-25 5.402560e-24
## ENSG00000135346 9.933989 4.3759621 183.83680 7.042705e-42 9.475290e-41
## ENSG00000198788 9.620993 2.8922036 75.32642 3.989847e-18 2.167479e-17
## ENSG00000198681 9.542852 1.3042268 122.01759 2.288002e-28 1.912443e-27
## ENSG00000253802 9.516407 3.5657102 128.39993 9.175875e-30 8.105033e-29
## ENSG00000162992 9.470890 -0.5487732 24.97930 5.794917e-07 1.658211e-06
## ENSG00000227234 9.376560 0.9376601 71.16386 3.287547e-17 1.714119e-16
## gene_name gene_type
## ENSG00000244461 LINC02077 lncRNA
## ENSG00000248330 LINC00613 lncRNA
## ENSG00000286775 AL355526.2 lncRNA
## ENSG00000204710 SPDYC protein_coding
## ENSG00000135346 CGA protein_coding
## ENSG00000198788 MUC2 protein_coding
## ENSG00000198681 MAGEA1 protein_coding
## ENSG00000253802 SIRLNT lncRNA
## ENSG00000162992 NEUROD1 protein_coding
## ENSG00000227234 SPANXB1 protein_coding
Print top 10 downregulated genes and lncRNAs
sorted_diff_expressed_genes_asc <- diff_expressed_genes %>% arrange(logFC)
head(sorted_diff_expressed_genes_asc, 10)
## logFC logCPM LR PValue FDR
## ENSG00000167531 -13.801810 3.7508853 325.22124 1.055918e-72 3.231050e-71
## ENSG00000234124 -12.411290 2.5452912 46.50460 9.140349e-12 3.596674e-11
## ENSG00000135222 -12.177230 6.4084136 149.00532 2.860072e-34 2.977611e-33
## ENSG00000171209 -11.425454 1.8297384 306.29286 1.402218e-68 3.895655e-67
## ENSG00000196228 -10.353080 2.7925882 93.72576 3.624130e-22 2.365309e-21
## ENSG00000126545 -8.911033 2.6916194 247.16637 1.076986e-55 2.172936e-54
## ENSG00000092054 -8.786685 4.6542179 57.39189 3.570762e-14 1.607079e-13
## ENSG00000174407 -8.349282 -2.1697737 33.68631 6.475465e-09 2.142604e-08
## ENSG00000163833 -8.263148 0.1852010 225.47786 5.775474e-51 1.034936e-49
## ENSG00000177354 -8.244711 -0.1657688 26.42840 2.734894e-07 8.021549e-07
## gene_name gene_type
## ENSG00000167531 LALBA protein_coding
## ENSG00000234124 CSN1S2AP transcribed_unitary_pseudogene
## ENSG00000135222 CSN2 protein_coding
## ENSG00000171209 CSN3 protein_coding
## ENSG00000196228 SULT1C3 protein_coding
## ENSG00000126545 CSN1S1 protein_coding
## ENSG00000092054 MYH7 protein_coding
## ENSG00000174407 MIR1-1HG lncRNA
## ENSG00000163833 FBXO40 protein_coding
## ENSG00000177354 C10orf71 protein_coding
sorted_diff_expressed_genes_asc <- diff_expressed_genes %>% arrange(logFC)
head(sorted_diff_expressed_genes_asc, 10)
## logFC logCPM LR PValue FDR
## ENSG00000167531 -13.801810 3.7508853 325.22124 1.055918e-72 3.231050e-71
## ENSG00000234124 -12.411290 2.5452912 46.50460 9.140349e-12 3.596674e-11
## ENSG00000135222 -12.177230 6.4084136 149.00532 2.860072e-34 2.977611e-33
## ENSG00000171209 -11.425454 1.8297384 306.29286 1.402218e-68 3.895655e-67
## ENSG00000196228 -10.353080 2.7925882 93.72576 3.624130e-22 2.365309e-21
## ENSG00000126545 -8.911033 2.6916194 247.16637 1.076986e-55 2.172936e-54
## ENSG00000092054 -8.786685 4.6542179 57.39189 3.570762e-14 1.607079e-13
## ENSG00000174407 -8.349282 -2.1697737 33.68631 6.475465e-09 2.142604e-08
## ENSG00000163833 -8.263148 0.1852010 225.47786 5.775474e-51 1.034936e-49
## ENSG00000177354 -8.244711 -0.1657688 26.42840 2.734894e-07 8.021549e-07
## gene_name gene_type
## ENSG00000167531 LALBA protein_coding
## ENSG00000234124 CSN1S2AP transcribed_unitary_pseudogene
## ENSG00000135222 CSN2 protein_coding
## ENSG00000171209 CSN3 protein_coding
## ENSG00000196228 SULT1C3 protein_coding
## ENSG00000126545 CSN1S1 protein_coding
## ENSG00000092054 MYH7 protein_coding
## ENSG00000174407 MIR1-1HG lncRNA
## ENSG00000163833 FBXO40 protein_coding
## ENSG00000177354 C10orf71 protein_coding
##miRNA differential expression analysis
Download miRNA Primary tumor and Solid Tissue Normal Data
query_miRNA_tumor <- GDCquery(
project = cancer_type,
data.category = "Transcriptome Profiling",
data.type = "miRNA Expression Quantification",
workflow.type = "BCGSC miRNA Profiling",
sample.type = c("Primary Tumor")
)
GDCdownload(query_miRNA_tumor)
miRNA_tumor <- GDCprepare(
query = query_miRNA_tumor
)
query_miRNA_normal <- GDCquery(
project = cancer_type,
data.category = "Transcriptome Profiling",
data.type = "miRNA Expression Quantification",
workflow.type = "BCGSC miRNA Profiling",
sample.type = c("Solid Tissue Normal")
)
GDCdownload(query_miRNA_normal)
miRNA_normal <- GDCprepare(
query = query_miRNA_normal
)
Here to maintain consistency, we want to make sure that samples used in miRNA differential expression analysis are the same as the samples used in gene differential expression analysis.
contains_cross_mapped <- function(column_name) {
return(grepl("cross-mapped", column_name))
}
contains_reads_per_million <- function(column_name) {
return(grepl("reads_per_million", column_name))
}
extract_base_sample_id <- function(id) {
return(substr(id, 1, nchar(id) -9))
}
extract_base_id_mirna <- function(full_id) {
# Assuming the format is always "read_count_" followed by the TCGA ID
id_parts <- strsplit(full_id, "_")[[1]]
base_id <- id_parts[length(id_parts)] # Get the last part after splitting
base_id <- unlist(strsplit(base_id, "-"))[1:3]
return(paste(base_id, collapse = "-"))
}
rownames(miRNA_tumor) <- miRNA_tumor$miRNA_ID
rownames(miRNA_normal) <- miRNA_normal$miRNA_ID
# Apply to miRNA data
mirna_base_ids_tumor <- sapply(colnames(miRNA_tumor), extract_base_id_mirna)
mirna_base_ids_normal <- sapply(colnames(miRNA_normal), extract_base_id_mirna)
miRNA_filtered_tumor <- miRNA_tumor[, !sapply(colnames(miRNA_tumor), contains_cross_mapped)]
miRNA_filtered_normal <- miRNA_normal[, !sapply(colnames(miRNA_normal), contains_cross_mapped)]
miRNA_filtered_tumor <- miRNA_filtered_tumor[, !sapply(colnames(miRNA_filtered_tumor), contains_reads_per_million)]
miRNA_filtered_normal <- miRNA_filtered_normal[, !sapply(colnames(miRNA_filtered_normal), contains_reads_per_million)]
# Function to remove "read_count_" prefix from the IDs
remove_read_count_prefix <- function(id) {
gsub("read_count_", "", id)
}
colnames(miRNA_filtered_tumor) <- sapply(colnames(miRNA_filtered_tumor), remove_read_count_prefix)
colnames(miRNA_filtered_normal) <- sapply(colnames(miRNA_filtered_normal), remove_read_count_prefix)
# Remove the 'miRNA_ID' column from both
miRNA_filtered_normal <- miRNA_filtered_normal[, !names(miRNA_filtered_normal) %in% "miRNA_ID"]
miRNA_filtered_tumor <- miRNA_filtered_tumor[, !names(miRNA_filtered_tumor) %in% "miRNA_ID"]
# Apply the function to the column names of both data frames
exp_filtered_tumor_base_ids <- sapply(colnames(exp_filtered_tumor), extract_base_sample_id)
miRNA_filtered_tumor_base_ids <- sapply(colnames(miRNA_filtered_tumor), extract_base_sample_id)
# Find common base sample IDs
common_base_samples <- dplyr::intersect(exp_filtered_tumor_base_ids, miRNA_filtered_tumor_base_ids)
# Filter both data frames to only include columns with common base sample IDs
exp_filtered_tumor_common <- exp_filtered_tumor[, exp_filtered_tumor_base_ids %in% common_base_samples]
miRNA_filtered_tumor_common <- miRNA_filtered_tumor[, miRNA_filtered_tumor_base_ids %in% common_base_samples]
# Ensure the columns are in the same order for both data frames
exp_filtered_tumor_common <- exp_filtered_tumor_common[, order(colnames(exp_filtered_tumor_common))]
miRNA_filtered_tumor_common <- miRNA_filtered_tumor_common[, order(colnames(miRNA_filtered_tumor_common))]
# Count frequency of each common base sample ID in miRNA_filtered_tumor_base_ids
miRNA_count <- table(miRNA_filtered_tumor_base_ids[miRNA_filtered_tumor_base_ids %in% common_base_samples])
# Count frequency of each common base sample ID in exp_filtered_tumor_base_ids
exp_count <- table(exp_filtered_tumor_base_ids[exp_filtered_tumor_base_ids %in% common_base_samples])
# Combine the counts into a data frame for easy viewing
combined_counts <- data.frame(
SampleID = names(miRNA_count),
miRNA_Count = as.integer(miRNA_count),
exp_Count = as.integer(exp_count[names(miRNA_count)])
)
duplicates <- combined_counts$SampleID[combined_counts$miRNA_Count > 1 | combined_counts$exp_Count > 1]
exp_filtered_tumor_common <- exp_filtered_tumor_common[, !colnames(exp_filtered_tumor_common) %in% duplicates]
miRNA_filtered_tumor_common <- miRNA_filtered_tumor_common[, !colnames(miRNA_filtered_tumor_common) %in% duplicates]
# Function to check if any of the duplicates are in a given column name
has_duplicate <- function(column_name, duplicates) {
any(sapply(duplicates, function(duplicate) grepl(duplicate, column_name)))
}
# Apply the function to each column name and negate the result to filter out duplicates
exp_filtered_tumor_common <- exp_filtered_tumor_common[, !sapply(colnames(exp_filtered_tumor_common), has_duplicate, duplicates=duplicates)]
miRNA_filtered_tumor_common <- miRNA_filtered_tumor_common[, !sapply(colnames(miRNA_filtered_tumor_common), has_duplicate, duplicates=duplicates)]
dim(exp_filtered_tumor_common)
## [1] 54314 202
dim(miRNA_filtered_tumor_common)
## [1] 1881 202
Save filtered miRNA data
file_miRNA_tumor <- paste(paste("miRNA_filtered_tumor_common", subtype, sep="_"), "rds", sep=".")
saveRDS(miRNA_filtered_tumor_common, file = file_miRNA_tumor)
file_miRNA_normal <- paste(paste("miRNA_filtered_normal", subtype, sep="_"), "rds", sep=".")
saveRDS(miRNA_filtered_normal, file = file_miRNA_normal)
Run miRNA differential expression analysis
diff_expressed_miRNA <- TCGAanalyze_DEA(
mat1 = miRNA_filtered_normal,
mat2 = miRNA_filtered_tumor_common,
Cond1type = "Normal",
Cond2type = "Tumor",
fdr.cut = 0.05 ,
logFC.cut = 0,
method = "glmLRT"
)
## Batch correction skipped since no factors provided
## ----------------------- DEA -------------------------------
## o 104 samples in Cond1type Normal
## o 202 samples in Cond2type Tumor
## o 1881 features as miRNA or genes
## This may take some minutes...
## ----------------------- END DEA -------------------------------
# Sort the diff_expressed_miRNA data frame by logFC in descending order to get the genes with the highest fold changes first
sorted_diff_expressed_miRNA <- diff_expressed_miRNA %>% arrange(desc(logFC))
file_path_mirna <- paste(paste("diff_expressed_miRNA", subtype, sep="_"), "xlsx", sep=".")
write.xlsx(sorted_diff_expressed_miRNA, file = file_path_mirna, rowNames = TRUE)
Lets look at the top upregulated miRNAs
head(sorted_diff_expressed_miRNA, 10)
## logFC logCPM LR PValue FDR
## hsa-mir-1269a 6.804819 6.463610 119.47987 8.222560e-28 1.128951e-26
## hsa-mir-449a 6.561816 4.007116 129.36893 5.631495e-30 8.612067e-29
## hsa-mir-1269b 6.116191 3.126153 52.92787 3.460248e-13 2.229016e-12
## hsa-mir-767 5.942019 3.111122 59.43837 1.261849e-14 9.128994e-14
## hsa-mir-105-1 5.917838 3.612357 73.49178 1.010561e-17 8.882544e-17
## hsa-mir-105-2 5.895766 3.627488 63.90027 1.308800e-15 1.008956e-14
## hsa-mir-449c 5.424732 1.033670 83.73316 5.662748e-20 5.518979e-19
## hsa-mir-449b 5.402629 1.897858 95.95899 1.172882e-22 1.313209e-21
## hsa-mir-3156-1 5.275305 1.058410 59.62876 1.145488e-14 8.416655e-14
## hsa-mir-4724 5.159294 1.781761 244.03190 5.195191e-55 2.079182e-53
Lets look at the top downregulated miRNAs
sorted_diff_expressed_miRNA_asc <- diff_expressed_miRNA %>% arrange(logFC)
head(sorted_diff_expressed_miRNA_asc, 10)
## logFC logCPM LR PValue FDR
## hsa-mir-206 -6.852999 6.69400425 81.55242 1.706745e-19 1.629638e-18
## hsa-mir-133b -6.550500 4.70020041 136.53364 1.525079e-31 2.607885e-30
## hsa-mir-1-1 -6.477141 6.29018007 379.21160 1.847601e-84 1.654923e-82
## hsa-mir-1-2 -6.446111 6.38475098 406.09105 2.600249e-90 2.877099e-88
## hsa-mir-133a-1 -6.235924 6.05547302 319.80639 1.596152e-71 1.072272e-69
## hsa-mir-133a-2 -6.132129 5.85894346 322.40765 4.329808e-72 3.016433e-70
## hsa-mir-486-2 -4.685842 8.26925589 431.42190 7.969166e-96 9.993334e-94
## hsa-mir-486-1 -4.675660 8.27909879 430.53397 1.243566e-95 1.461967e-93
## hsa-mir-208b -3.990890 -0.05201834 23.22497 1.441138e-06 6.050851e-06
## hsa-mir-451a -3.600558 10.04907461 312.07307 7.720127e-70 4.537987e-68
Download Methylation data
group.col <- "sample_type"
group1 <- "Primary Tumor"
group2 <- "Solid Tissue Normal"
query_met_tumor <- GDCquery(
project = cancer_type,
data.category = "DNA Methylation",
platform = "Illumina Human Methylation 450",
data.type = "Methylation Beta Value",
sample.type = c("Primary Tumor")
)
GDCdownload(query_met_tumor)
met_tumor <- GDCprepare(query_met_tumor, save = FALSE)
query_met_normal <- GDCquery(
project = cancer_type,
data.category = "DNA Methylation",
platform = "Illumina Human Methylation 450",
data.type = "Methylation Beta Value",
sample.type = c("Solid Tissue Normal")
)
GDCdownload(query_met_normal)
met_normal <- GDCprepare(query_met_normal, save = FALSE)
Pull subtype methylation data and merge it with normal sample methylotion data
clinical_data <- GDCquery_clinic(project = "TCGA-BRCA", type = "clinical")
metadata <- colData(met_tumor) # contains dataframe with PAM50 tumor classifications and other clinical data for each sample
LumB_samples <- metadata[!is.na(metadata$paper_BRCA_Subtype_PAM50) & metadata$paper_BRCA_Subtype_PAM50 == subtype,]
# It is important to note that sample ids in exp_tumor is large ids with extra characters and samples$bcr_patient_barcode
# has trunctued id format. Therefore to match these and pull subtype sample expression data, we need following
matched_columns <- sapply(colnames(met_tumor), function(column_name) {
any(sapply(subtype_samples$bcr_patient_barcode, function(truncated_id) {
grepl(truncated_id, column_name)
}))
})
met_tumor_filtered <- met_tumor[, matched_columns]
common_met <- dplyr::intersect(rownames(met_tumor_filtered), rownames(met_normal))
# Subset each dataset to include only common genes
met_filtered_tumor_common <- met_tumor_filtered[common_met, ]
met_filtered_normal_common <- met_normal[common_met, ]
# Subset tumor dataset for common CpG islands
met_filtered_tumor_common <- met_filtered_tumor_common[rownames(met_filtered_tumor_common) %in% rownames(met_filtered_normal_common), ]
# Subset normal dataset for common CpG islands
met_filtered_normal_common <- met_filtered_normal_common[rownames(met_filtered_normal_common) %in% rownames(met_filtered_tumor_common), ]
# Merge Tumor and Normal methylation data
assay_tumor <- assay(met_filtered_tumor_common)
assay_normal <- assay(met_filtered_normal_common)
met <- cbind(assay_tumor, assay_normal)
rm(clinical_data)
Merge subtype gene expression data with normal gene expression data
Combine methylation and gene expression data
library(ELMER)
distal.probes <- get.feature.probe(
genome = "hg19",
met.platform = "450K"
)
mae <- createMAE(
exp = assay(exp_combined),
met = met,
save = TRUE,
linearize.exp = TRUE,
save.filename = "mae.rda",
filter.probes = distal.probes,
met.platform = "450K",
genome = "hg19",
TCGA = TRUE
)
fname = paste(paste("mae", subtype, sep="_"), "rds", sep=".")
saveRDS(mae, file = fname)
mae <- readRDS(fname)
rm(exp_filtered_tumor_common)
rm(exp_filtered_normal_common)
rm(met)
rm(met_tumor)
rm(met_normal)
rm(assay_normal)
rm(assay_tumor)
rm(exp_combined)
rm(met_normal_filtered)
rm(met_filtered_normal_common)
rm(met_filtered_tumor_common)
gc()
Methylation data analysis function
library(ELMER)
library(openxlsx)
library(dplyr)
runMethylationTest <- function(direction, subtype, mae) {
message("Get diff methylated probes")
cores <- 8
group.col <- "sample_type"
group1 <- "Primary Tumor"
group2 <- "Solid Tissue Normal"
dir.out <- paste0("elmer/",direction)
dir.create(dir.out, showWarnings = FALSE, recursive = TRUE)
Sig.probes <- get.diff.meth(
data = mae,
group.col = group.col,
group1 = group1,
group2 = group2,
minSubgroupFrac = 1.0,
sig.dif = 0.2,
diff.dir = direction,
cores = cores,
dir.out = dir.out,
pvalue = 0.05
)
message("Get nearby genes")
nearGenes <- GetNearGenes(
data = mae,
numFlankingGenes = 4, # default is 20 genes
probes = Sig.probes$probe
)
rm(Sig.probes)
message("Get anti correlated probes-genes")
sig_pair <- get.pair(
data = mae,
group.col = group.col,
group1 = group1,
group2 = group2,
nearGenes = nearGenes,
mode = "supervised",
minSubgroupFrac = 1,
raw.pvalue = 0.05,
Pe = 0.05,
filter.probes = TRUE,
filter.percentage = 0.05,
save = FALSE,
filter.portion = 0.2,
dir.out = dir.out,
diff.dir = direction,
cores = cores,
label = direction
)
fname = paste(paste(paste("pair", direction, sep="_"), subtype, sep="_"), "xlsx", sep=".")
write.xlsx(sig_pair, file = fname)
gc()
enriched.motif <- get.enriched.motif(
data = mae,
probes = sig_pair$Probe,
dir.out = dir.out,
label = direction,
pvalue = 0.05, # default is FDR < 0.05
min.incidence = 10,
lower.OR = 1.1
)
# Write TF binding to gene differentially methylated sites
motif_data <- stack(enriched.motif)
colnames(motif_data) <- c("Probe", "Motif")
combined_data <- sig_pair %>%
dplyr::select(Probe, Symbol) %>%
inner_join(motif_data, by = "Probe")
result <- combined_data %>%
group_by(Symbol) %>%
summarize(Motifs = paste(unique(Motif), collapse = ", "))
fname = paste(paste(paste("gene_Motif", direction, sep="_"), subtype, sep="_"), "csv", sep=".")
write.csv(result, fname, row.names = TRUE)
rm(motif_data)
rm(sig_pair)
rm(enriched.motif)
}
Run data analysis for Hypomethylation test
gc()
output <- runMethylationTest(direction="hypo", subtype=subtype, mae=mae)
Lets look at the transcription factors binding to the Hypomethylated motifs of differentially expressed genes
direction="hypo"
fname <- paste(paste(paste("gene_Motif", direction, sep="_"), subtype, sep="_"), "csv", sep=".")
result <- read.csv(fname, row.names = "Symbol")
result$X = NULL
head(result, 10)
## Motifs
## AATK PO2F1_HUMAN.H11MO.0.C, PAX7_HUMAN.H11MO.0.D, PAX3_HUMAN.H11MO.0.D, DMRT1_HUMAN.H11MO.0.D, RUNX1_HUMAN.H11MO.0.A, BC11A_HUMAN.H11MO.0.A, RUNX3_HUMAN.H11MO.0.A
## ABCC1 FOXA2_HUMAN.H11MO.0.A, FOXA3_HUMAN.H11MO.0.B, FOXA1_HUMAN.H11MO.0.A, FOXM1_HUMAN.H11MO.0.A, FOXC1_HUMAN.H11MO.0.C, FOXB1_HUMAN.H11MO.0.D, FOXP2_HUMAN.H11MO.0.C, FOXK1_HUMAN.H11MO.0.A, DLX3_HUMAN.H11MO.0.C, HME1_HUMAN.H11MO.0.D, GRHL1_HUMAN.H11MO.0.D, RX_HUMAN.H11MO.0.D, ESX1_HUMAN.H11MO.0.D, IRF1_HUMAN.H11MO.0.A, IRF2_HUMAN.H11MO.0.A, PRDM1_HUMAN.H11MO.0.A, IRF3_HUMAN.H11MO.0.B, VSX1_HUMAN.H11MO.0.D
## ABCD3 FOXO6_HUMAN.H11MO.0.D, FOXD3_HUMAN.H11MO.0.D, FOXK1_HUMAN.H11MO.0.A, JUNB_HUMAN.H11MO.0.A, JUN_HUMAN.H11MO.0.A, FOSL1_HUMAN.H11MO.0.A, FOS_HUMAN.H11MO.0.A, FOSB_HUMAN.H11MO.0.A, FOSL2_HUMAN.H11MO.0.A, BATF_HUMAN.H11MO.1.A, JUND_HUMAN.H11MO.0.A, FOXO4_HUMAN.H11MO.0.C, ANDR_HUMAN.H11MO.0.A, FOXC2_HUMAN.H11MO.0.D, DLX6_HUMAN.H11MO.0.D, NF2L2_HUMAN.H11MO.0.A, HXC12_HUMAN.H11MO.0.D, RORG_HUMAN.H11MO.0.C, DLX4_HUMAN.H11MO.0.D, GRHL1_HUMAN.H11MO.0.D, PO2F3_HUMAN.H11MO.0.D, HXD11_HUMAN.H11MO.0.D, HOMEZ_HUMAN.H11MO.0.D, NFAC2_HUMAN.H11MO.0.B, BATF3_HUMAN.H11MO.0.B
## ABHD17C FOXF2_HUMAN.H11MO.0.D, FOXJ2_HUMAN.H11MO.0.C, FOXP2_HUMAN.H11MO.0.C, FOXO6_HUMAN.H11MO.0.D, FOXF1_HUMAN.H11MO.0.D, FOXP1_HUMAN.H11MO.0.A, FOXQ1_HUMAN.H11MO.0.C, FOXL1_HUMAN.H11MO.0.D, EVI1_HUMAN.H11MO.0.B, NR1D1_HUMAN.H11MO.1.D, FOXC2_HUMAN.H11MO.0.D, DUXA_HUMAN.H11MO.0.D, PAX2_HUMAN.H11MO.0.D, PRRX1_HUMAN.H11MO.0.D, ARI3A_HUMAN.H11MO.0.D, FOXG1_HUMAN.H11MO.0.D, GRHL1_HUMAN.H11MO.0.D, ZIM3_HUMAN.H11MO.0.C, OZF_HUMAN.H11MO.0.C, ZNF85_HUMAN.H11MO.0.C, Z354A_HUMAN.H11MO.0.C, ZNF8_HUMAN.H11MO.0.C, IRF4_HUMAN.H11MO.0.A, ZN394_HUMAN.H11MO.0.C, FOXA2_HUMAN.H11MO.0.A, FOXA3_HUMAN.H11MO.0.B, FOXA1_HUMAN.H11MO.0.A, FOXM1_HUMAN.H11MO.0.A, FOXC1_HUMAN.H11MO.0.C, FOXB1_HUMAN.H11MO.0.D, FOXD1_HUMAN.H11MO.0.D, FOXK1_HUMAN.H11MO.0.A, FOXJ3_HUMAN.H11MO.0.A, PO4F3_HUMAN.H11MO.0.D, HXC6_HUMAN.H11MO.0.D, MEOX2_HUMAN.H11MO.0.D, ZFHX3_HUMAN.H11MO.0.D, ZNF85_HUMAN.H11MO.1.C, ZN652_HUMAN.H11MO.0.D, PO3F4_HUMAN.H11MO.0.D, SRY_HUMAN.H11MO.0.B, PDX1_HUMAN.H11MO.1.A, LMX1B_HUMAN.H11MO.0.D, MEF2C_HUMAN.H11MO.0.A, LMX1A_HUMAN.H11MO.0.D, PO3F3_HUMAN.H11MO.0.D, NKX23_HUMAN.H11MO.0.D, HMBX1_HUMAN.H11MO.0.D, NR4A1_HUMAN.H11MO.0.A
## AC000367.1 FOXM1_HUMAN.H11MO.0.A, FOXF1_HUMAN.H11MO.0.D, FOXD3_HUMAN.H11MO.0.D, FOXK1_HUMAN.H11MO.0.A, JUNB_HUMAN.H11MO.0.A, FOS_HUMAN.H11MO.0.A, BATF_HUMAN.H11MO.1.A, FOXP1_HUMAN.H11MO.0.A, PO5F1_HUMAN.H11MO.0.A, BATF_HUMAN.H11MO.0.A, IRF9_HUMAN.H11MO.0.C, NANOG_HUMAN.H11MO.0.A, FOXO1_HUMAN.H11MO.0.A, FOXC2_HUMAN.H11MO.0.D, SIX2_HUMAN.H11MO.0.A, FOXJ3_HUMAN.H11MO.0.A, TEF_HUMAN.H11MO.0.D, SOX2_HUMAN.H11MO.1.A, ONEC2_HUMAN.H11MO.0.D, FOXG1_HUMAN.H11MO.0.D, GRHL1_HUMAN.H11MO.0.D, IRF1_HUMAN.H11MO.0.A, SRY_HUMAN.H11MO.0.B, PRDM6_HUMAN.H11MO.0.C, IRF2_HUMAN.H11MO.0.A, PRDM1_HUMAN.H11MO.0.A, BATF3_HUMAN.H11MO.0.B, ZN214_HUMAN.H11MO.0.C, IRF3_HUMAN.H11MO.0.B, IRF4_HUMAN.H11MO.0.A, NR4A1_HUMAN.H11MO.0.A, ZFP82_HUMAN.H11MO.0.C
## AC002044.4 FOXA3_HUMAN.H11MO.0.B, FOXA1_HUMAN.H11MO.0.A, FOXF2_HUMAN.H11MO.0.D, FOXC1_HUMAN.H11MO.0.C, FOXJ2_HUMAN.H11MO.0.C, FOXD1_HUMAN.H11MO.0.D, FOXO6_HUMAN.H11MO.0.D, FOXF1_HUMAN.H11MO.0.D, FOXO3_HUMAN.H11MO.0.B, FOXK1_HUMAN.H11MO.0.A, FOXP1_HUMAN.H11MO.0.A, CUX2_HUMAN.H11MO.0.D, FOXO4_HUMAN.H11MO.0.C, FOXQ1_HUMAN.H11MO.0.C, HNF6_HUMAN.H11MO.0.B, PHX2A_HUMAN.H11MO.0.D, PHX2B_HUMAN.H11MO.0.D, FOXO1_HUMAN.H11MO.0.A, ALX4_HUMAN.H11MO.0.D, HBP1_HUMAN.H11MO.0.D, DRGX_HUMAN.H11MO.0.D, FOXJ3_HUMAN.H11MO.0.A, ARX_HUMAN.H11MO.0.D, FOXJ3_HUMAN.H11MO.1.B, ALX1_HUMAN.H11MO.0.B, RAX2_HUMAN.H11MO.0.D, ALX3_HUMAN.H11MO.0.D, PROP1_HUMAN.H11MO.0.D, ONEC2_HUMAN.H11MO.0.D, UNC4_HUMAN.H11MO.0.D, FOXG1_HUMAN.H11MO.0.D, GRHL1_HUMAN.H11MO.0.D, ZIM3_HUMAN.H11MO.0.C, SMCA1_HUMAN.H11MO.0.C, ONEC3_HUMAN.H11MO.0.D, IRF1_HUMAN.H11MO.0.A, SRY_HUMAN.H11MO.0.B, HXD11_HUMAN.H11MO.0.D, MEF2C_HUMAN.H11MO.0.A, BC11A_HUMAN.H11MO.0.A, IRF3_HUMAN.H11MO.0.B, HXD8_HUMAN.H11MO.0.D, SIX1_HUMAN.H11MO.0.A, SIX2_HUMAN.H11MO.0.A, NKX31_HUMAN.H11MO.0.C, TEF_HUMAN.H11MO.0.D, HXC6_HUMAN.H11MO.0.D, PO6F1_HUMAN.H11MO.0.D, PO5F1_HUMAN.H11MO.1.A, NFAC1_HUMAN.H11MO.0.B, P5F1B_HUMAN.H11MO.0.D, CDX1_HUMAN.H11MO.0.C, CDX2_HUMAN.H11MO.0.A, PO3F4_HUMAN.H11MO.0.D, PRDM6_HUMAN.H11MO.0.C, ZN350_HUMAN.H11MO.0.C, LMX1A_HUMAN.H11MO.0.D, PO3F3_HUMAN.H11MO.0.D, ZN214_HUMAN.H11MO.0.C, FOXP3_HUMAN.H11MO.0.D, FOXL1_HUMAN.H11MO.0.D, GATA3_HUMAN.H11MO.0.A, ANDR_HUMAN.H11MO.0.A, NR1D1_HUMAN.H11MO.1.D, BATF_HUMAN.H11MO.0.A, IRF9_HUMAN.H11MO.0.C, IRF7_HUMAN.H11MO.0.C, SOX2_HUMAN.H11MO.1.A, OLIG1_HUMAN.H11MO.0.D, RORG_HUMAN.H11MO.0.C, ZN250_HUMAN.H11MO.0.C, BHE22_HUMAN.H11MO.0.D, SOX1_HUMAN.H11MO.0.D, IRF2_HUMAN.H11MO.0.A, PRDM1_HUMAN.H11MO.0.A, Z354A_HUMAN.H11MO.0.C, SOX7_HUMAN.H11MO.0.D, IRF4_HUMAN.H11MO.0.A, IRF5_HUMAN.H11MO.0.D, SOX11_HUMAN.H11MO.0.D, ZFP82_HUMAN.H11MO.0.C, ZN394_HUMAN.H11MO.0.C
## AC002331.1 FOXB1_HUMAN.H11MO.0.D, FOXJ2_HUMAN.H11MO.0.C, GATA1_HUMAN.H11MO.1.A, GATA6_HUMAN.H11MO.0.A, GATA3_HUMAN.H11MO.0.A, GATA4_HUMAN.H11MO.0.A, GATA1_HUMAN.H11MO.0.A, GATA2_HUMAN.H11MO.1.A, DLX3_HUMAN.H11MO.0.C, ZSC16_HUMAN.H11MO.0.D, HME2_HUMAN.H11MO.0.D, HXA2_HUMAN.H11MO.0.D, CDC5L_HUMAN.H11MO.0.D, ARI5B_HUMAN.H11MO.0.C, HXD3_HUMAN.H11MO.0.D, SOX7_HUMAN.H11MO.0.D, PO6F2_HUMAN.H11MO.0.D, SOX11_HUMAN.H11MO.0.D, FOXF1_HUMAN.H11MO.0.D, FOXD2_HUMAN.H11MO.0.D, FOXP3_HUMAN.H11MO.0.D, FOXO4_HUMAN.H11MO.0.C, FOXL1_HUMAN.H11MO.0.D, PAX7_HUMAN.H11MO.0.D, FOXJ3_HUMAN.H11MO.0.A, HNF1B_HUMAN.H11MO.0.A, FOXJ3_HUMAN.H11MO.1.B, PAX3_HUMAN.H11MO.0.D, DMRT1_HUMAN.H11MO.0.D, PO6F1_HUMAN.H11MO.0.D, SOX2_HUMAN.H11MO.1.A, HXC12_HUMAN.H11MO.0.D, HXC9_HUMAN.H11MO.0.C, ZIM3_HUMAN.H11MO.0.C, CDX2_HUMAN.H11MO.0.A, SOX1_HUMAN.H11MO.0.D, ONEC3_HUMAN.H11MO.0.D, HNF1A_HUMAN.H11MO.0.C, HXC11_HUMAN.H11MO.0.D, PRDM1_HUMAN.H11MO.0.A, TWST1_HUMAN.H11MO.0.A, PO4F2_HUMAN.H11MO.0.D, HXD11_HUMAN.H11MO.0.D, HOMEZ_HUMAN.H11MO.0.D, NR2E1_HUMAN.H11MO.0.D, NFAC2_HUMAN.H11MO.0.B, ZFP82_HUMAN.H11MO.0.C, NANOG_HUMAN.H11MO.0.A, GATA5_HUMAN.H11MO.0.D, NFIL3_HUMAN.H11MO.0.D, PO4F3_HUMAN.H11MO.0.D, HXC6_HUMAN.H11MO.0.D, PO4F1_HUMAN.H11MO.0.D, MEOX2_HUMAN.H11MO.0.D, SRF_HUMAN.H11MO.0.A, OLIG1_HUMAN.H11MO.0.D, NKX61_HUMAN.H11MO.0.B, HXB3_HUMAN.H11MO.0.D, ZNF85_HUMAN.H11MO.1.C, BARX1_HUMAN.H11MO.0.D, SMCA1_HUMAN.H11MO.0.C, BHE22_HUMAN.H11MO.0.D, GSX1_HUMAN.H11MO.0.D, VSX2_HUMAN.H11MO.0.D, TBP_HUMAN.H11MO.0.A, PDX1_HUMAN.H11MO.1.A, ZN350_HUMAN.H11MO.0.C, CEBPB_HUMAN.H11MO.0.A, LMX1A_HUMAN.H11MO.0.D, PO3F3_HUMAN.H11MO.0.D, LHX2_HUMAN.H11MO.0.A, CEBPD_HUMAN.H11MO.0.C, HMX1_HUMAN.H11MO.0.D, CEBPA_HUMAN.H11MO.0.A
## AC002365.1 FOXA3_HUMAN.H11MO.0.B, FOXF2_HUMAN.H11MO.0.D, FOXD1_HUMAN.H11MO.0.D, FOXP2_HUMAN.H11MO.0.C, FOXO6_HUMAN.H11MO.0.D, FOXO3_HUMAN.H11MO.0.B, FOXK1_HUMAN.H11MO.0.A, FOXO4_HUMAN.H11MO.0.C, FOXQ1_HUMAN.H11MO.0.C, FOXJ3_HUMAN.H11MO.0.A, NFAC1_HUMAN.H11MO.0.B, ZNF85_HUMAN.H11MO.1.C, BARX1_HUMAN.H11MO.0.D, FOXG1_HUMAN.H11MO.0.D, ARI5B_HUMAN.H11MO.0.C
## AC002551.1 FOXF2_HUMAN.H11MO.0.D, FOXO6_HUMAN.H11MO.0.D, FOXF1_HUMAN.H11MO.0.D, JUNB_HUMAN.H11MO.0.A, JUN_HUMAN.H11MO.0.A, FOSL1_HUMAN.H11MO.0.A, FOS_HUMAN.H11MO.0.A, FOSB_HUMAN.H11MO.0.A, FOSL2_HUMAN.H11MO.0.A, JUND_HUMAN.H11MO.0.A, DLX3_HUMAN.H11MO.0.C, DUX4_HUMAN.H11MO.0.A, MEOX2_HUMAN.H11MO.0.D, ONEC2_HUMAN.H11MO.0.D, EMX1_HUMAN.H11MO.0.D, HME2_HUMAN.H11MO.0.D, ZN250_HUMAN.H11MO.0.C, EMX2_HUMAN.H11MO.0.D, HXA2_HUMAN.H11MO.0.D, RX_HUMAN.H11MO.0.D, ISX_HUMAN.H11MO.0.D, MIXL1_HUMAN.H11MO.0.D, PAX4_HUMAN.H11MO.0.D, PDX1_HUMAN.H11MO.1.A, PRDM1_HUMAN.H11MO.0.A, TWST1_HUMAN.H11MO.0.A, NKX62_HUMAN.H11MO.0.D, LHX2_HUMAN.H11MO.0.A, NOTO_HUMAN.H11MO.0.D, VSX1_HUMAN.H11MO.0.D
## AC003989.3 PO2F1_HUMAN.H11MO.0.C, SIX1_HUMAN.H11MO.0.A, ZSC16_HUMAN.H11MO.0.D, NKX31_HUMAN.H11MO.0.C, PAX2_HUMAN.H11MO.0.D, IRX3_HUMAN.H11MO.0.D, NKX32_HUMAN.H11MO.0.C, HMX2_HUMAN.H11MO.0.D, HXC12_HUMAN.H11MO.0.D, HXC9_HUMAN.H11MO.0.C, PO2F3_HUMAN.H11MO.0.D, CDX2_HUMAN.H11MO.0.A, SOX1_HUMAN.H11MO.0.D, ELF3_HUMAN.H11MO.0.A, IRF2_HUMAN.H11MO.0.A, PRDM1_HUMAN.H11MO.0.A, HXD11_HUMAN.H11MO.0.D, NR2E1_HUMAN.H11MO.0.D, BC11A_HUMAN.H11MO.0.A, IRF3_HUMAN.H11MO.0.B, HMBX1_HUMAN.H11MO.0.D, HMX3_HUMAN.H11MO.0.D, ZFP82_HUMAN.H11MO.0.C, ZN394_HUMAN.H11MO.0.C
Run data analysis for Hypermethylation test
gc()
output <- runMethylationTest(direction="hyper", subtype=subtype, mae=mae)
Lets look at the transcription factors binding to the Hypermethylated motifs of differentially expressed genes
direction="hyper"
fname <- paste(paste(paste("gene_Motif", direction, sep="_"), subtype, sep="_"), "csv", sep=".")
result <- read.csv(fname, row.names = "Symbol")
result$X = NULL
head(result, 10)
## Motifs
## AACS ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, SP4_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, PROX1_HUMAN.H11MO.0.D, KLF5_HUMAN.H11MO.0.A, ZIC4_HUMAN.H11MO.0.D, GLIS2_HUMAN.H11MO.0.D, KLF4_HUMAN.H11MO.0.A, ZN320_HUMAN.H11MO.0.C, HINFP_HUMAN.H11MO.0.C, HEN1_HUMAN.H11MO.0.C, AHR_HUMAN.H11MO.0.B, ZFX_HUMAN.H11MO.0.A, ZN524_HUMAN.H11MO.0.D, WT1_HUMAN.H11MO.1.B, ZIC1_HUMAN.H11MO.0.B, PAX5_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, RREB1_HUMAN.H11MO.0.D, SRBP2_HUMAN.H11MO.0.B, HAND1_HUMAN.H11MO.1.D, GSC2_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.1.D, KLF8_HUMAN.H11MO.0.C, ARNT_HUMAN.H11MO.0.B, NR2C2_HUMAN.H11MO.0.B, XBP1_HUMAN.H11MO.0.D, EGR3_HUMAN.H11MO.0.D, HIF1A_HUMAN.H11MO.0.C, ZN563_HUMAN.H11MO.0.C, ZN423_HUMAN.H11MO.0.D, ZSC31_HUMAN.H11MO.0.C, ZN331_HUMAN.H11MO.0.C, ZN335_HUMAN.H11MO.0.A, EPAS1_HUMAN.H11MO.0.B, ESR2_HUMAN.H11MO.0.A, COE1_HUMAN.H11MO.0.A
## AAED1 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, EGR1_HUMAN.H11MO.0.A, TFDP1_HUMAN.H11MO.0.C, SP4_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, E2F5_HUMAN.H11MO.0.B, AP2B_HUMAN.H11MO.0.B, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.1.A, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, ZN219_HUMAN.H11MO.0.D, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, ZBT7A_HUMAN.H11MO.0.A, VEZF1_HUMAN.H11MO.1.C, PROX1_HUMAN.H11MO.0.D, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, ZBT17_HUMAN.H11MO.0.A, TAF1_HUMAN.H11MO.0.A, ZIC4_HUMAN.H11MO.0.D, NR1H4_HUMAN.H11MO.0.B, PATZ1_HUMAN.H11MO.1.C, KLF4_HUMAN.H11MO.0.A, ZN320_HUMAN.H11MO.0.C, FEV_HUMAN.H11MO.0.B, HINFP_HUMAN.H11MO.0.C, E2F3_HUMAN.H11MO.0.A, SALL4_HUMAN.H11MO.0.B, AHR_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, GABPA_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.0.A, ZN524_HUMAN.H11MO.0.D, WT1_HUMAN.H11MO.1.B, GCM2_HUMAN.H11MO.0.D, INSM1_HUMAN.H11MO.0.C, ZIC1_HUMAN.H11MO.0.B, ZN263_HUMAN.H11MO.1.A, HES1_HUMAN.H11MO.0.D, ETV1_HUMAN.H11MO.0.A, FLI1_HUMAN.H11MO.0.A, PAX5_HUMAN.H11MO.0.A, RREB1_HUMAN.H11MO.0.D, SRBP2_HUMAN.H11MO.0.B, AP2C_HUMAN.H11MO.0.A, ZBTB4_HUMAN.H11MO.0.D, ETS1_HUMAN.H11MO.0.A, KLF8_HUMAN.H11MO.0.C, FLI1_HUMAN.H11MO.1.A, NFKB2_HUMAN.H11MO.0.B, ELF1_HUMAN.H11MO.0.A, ARNT_HUMAN.H11MO.0.B, MXI1_HUMAN.H11MO.0.A, ERG_HUMAN.H11MO.0.A, COT1_HUMAN.H11MO.0.C, NR2C2_HUMAN.H11MO.0.B, XBP1_HUMAN.H11MO.0.D, RXRA_HUMAN.H11MO.0.A, ETS2_HUMAN.H11MO.0.B, NFIC_HUMAN.H11MO.0.A, ETV5_HUMAN.H11MO.0.C, TFCP2_HUMAN.H11MO.0.D, PTF1A_HUMAN.H11MO.0.B, ZBTB6_HUMAN.H11MO.0.C, ZN335_HUMAN.H11MO.0.A, ZEP1_HUMAN.H11MO.0.D, ETV4_HUMAN.H11MO.0.B, ZNF76_HUMAN.H11MO.0.C, COE1_HUMAN.H11MO.0.A
## AASS TFDP1_HUMAN.H11MO.0.C, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZSC22_HUMAN.H11MO.0.C, TAF1_HUMAN.H11MO.0.A, GABPA_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.1.A, MYF6_HUMAN.H11MO.0.C, ZN770_HUMAN.H11MO.1.C, KAISO_HUMAN.H11MO.2.A, RFX5_HUMAN.H11MO.0.A, NFIC_HUMAN.H11MO.0.A, TFCP2_HUMAN.H11MO.0.D, ZBTB6_HUMAN.H11MO.0.C, ZN322_HUMAN.H11MO.0.B, ZN335_HUMAN.H11MO.0.A
## ABCB5 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, MECP2_HUMAN.H11MO.0.C, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, KLF13_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, TFDP1_HUMAN.H11MO.0.C, SP4_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, AP2B_HUMAN.H11MO.0.B, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, KAISO_HUMAN.H11MO.1.A, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, ZN219_HUMAN.H11MO.0.D, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, ZBT7A_HUMAN.H11MO.0.A, VEZF1_HUMAN.H11MO.1.C, PURA_HUMAN.H11MO.0.D, HEY2_HUMAN.H11MO.0.D, ZSC22_HUMAN.H11MO.0.C, TAF1_HUMAN.H11MO.0.A, PLAG1_HUMAN.H11MO.0.D, NR1H4_HUMAN.H11MO.0.B, PATZ1_HUMAN.H11MO.1.C, PLAL1_HUMAN.H11MO.0.D, HINFP_HUMAN.H11MO.0.C, E2F3_HUMAN.H11MO.0.A, SALL4_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, CXXC1_HUMAN.H11MO.0.D, ZFX_HUMAN.H11MO.0.A, SPIC_HUMAN.H11MO.0.D, GCM2_HUMAN.H11MO.0.D, ZN350_HUMAN.H11MO.1.D, FLI1_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, MTF1_HUMAN.H11MO.0.C, RREB1_HUMAN.H11MO.0.D, SRBP2_HUMAN.H11MO.0.B, HAND1_HUMAN.H11MO.1.D, RELB_HUMAN.H11MO.0.C, AP2C_HUMAN.H11MO.0.A, FLI1_HUMAN.H11MO.1.A, NFKB2_HUMAN.H11MO.0.B, ARNT_HUMAN.H11MO.0.B, ETV2_HUMAN.H11MO.0.B, ERG_HUMAN.H11MO.0.A, SUH_HUMAN.H11MO.0.A, XBP1_HUMAN.H11MO.0.D, HIF1A_HUMAN.H11MO.0.C, RXRA_HUMAN.H11MO.0.A, ETV5_HUMAN.H11MO.0.C, REST_HUMAN.H11MO.0.A, ZSC31_HUMAN.H11MO.0.C, ZN322_HUMAN.H11MO.0.B, EPAS1_HUMAN.H11MO.0.B, ZEP1_HUMAN.H11MO.0.D, CTCFL_HUMAN.H11MO.0.A, ELK4_HUMAN.H11MO.0.A, TBX15_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.0.A, RFX1_HUMAN.H11MO.0.B, ZN770_HUMAN.H11MO.0.C, KLF5_HUMAN.H11MO.0.A, CENPB_HUMAN.H11MO.0.D, CTCF_HUMAN.H11MO.0.A, ZN740_HUMAN.H11MO.0.D, KLF4_HUMAN.H11MO.0.A, AHR_HUMAN.H11MO.0.B, ZN263_HUMAN.H11MO.1.A, ZBT7B_HUMAN.H11MO.0.D, GLIS1_HUMAN.H11MO.0.D, PAX5_HUMAN.H11MO.0.A, ZBTB4_HUMAN.H11MO.1.D, NKX25_HUMAN.H11MO.0.B, COT1_HUMAN.H11MO.0.C, NR2C2_HUMAN.H11MO.0.B, ETS2_HUMAN.H11MO.0.B, ZN331_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, NRF1_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, EGR1_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, PROX1_HUMAN.H11MO.0.D, ZBT17_HUMAN.H11MO.0.A, FEV_HUMAN.H11MO.0.B, HEN1_HUMAN.H11MO.0.C, GABPA_HUMAN.H11MO.0.A, ZN524_HUMAN.H11MO.0.D, WT1_HUMAN.H11MO.1.B, ELF2_HUMAN.H11MO.0.C, ETS1_HUMAN.H11MO.0.A, ZN816_HUMAN.H11MO.0.C, ELF1_HUMAN.H11MO.0.A, MXI1_HUMAN.H11MO.0.A, MYBA_HUMAN.H11MO.0.D, ELF5_HUMAN.H11MO.0.A, EGR3_HUMAN.H11MO.0.D, ZN436_HUMAN.H11MO.0.C, ZN563_HUMAN.H11MO.0.C, MYCN_HUMAN.H11MO.0.A, ZN335_HUMAN.H11MO.0.A, ESR2_HUMAN.H11MO.0.A, SPI1_HUMAN.H11MO.0.A, ZIC4_HUMAN.H11MO.0.D, ZIC1_HUMAN.H11MO.0.B, OVOL2_HUMAN.H11MO.0.D, MZF1_HUMAN.H11MO.0.B, NFIC_HUMAN.H11MO.0.A, ZN770_HUMAN.H11MO.1.C, RFX5_HUMAN.H11MO.0.A
## ABCD4 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, KLF13_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, EGR1_HUMAN.H11MO.0.A, TFDP1_HUMAN.H11MO.0.C, SP4_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, E2F5_HUMAN.H11MO.0.B, AP2B_HUMAN.H11MO.0.B, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, ZN219_HUMAN.H11MO.0.D, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, ZBT7A_HUMAN.H11MO.0.A, VEZF1_HUMAN.H11MO.1.C, PURA_HUMAN.H11MO.0.D, PROX1_HUMAN.H11MO.0.D, ZN770_HUMAN.H11MO.0.C, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, ZBT17_HUMAN.H11MO.0.A, ZSC22_HUMAN.H11MO.0.C, TAF1_HUMAN.H11MO.0.A, ZIC4_HUMAN.H11MO.0.D, PLAG1_HUMAN.H11MO.0.D, NR1H4_HUMAN.H11MO.0.B, PATZ1_HUMAN.H11MO.1.C, KLF4_HUMAN.H11MO.0.A, ZN320_HUMAN.H11MO.0.C, E2F3_HUMAN.H11MO.0.A, SALL4_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, GABPA_HUMAN.H11MO.0.A, SPIC_HUMAN.H11MO.0.D, WT1_HUMAN.H11MO.1.B, GCM2_HUMAN.H11MO.0.D, ZN263_HUMAN.H11MO.1.A, GLIS1_HUMAN.H11MO.0.D, FLI1_HUMAN.H11MO.0.A, PAX5_HUMAN.H11MO.0.A, HAND1_HUMAN.H11MO.1.D, RELB_HUMAN.H11MO.0.C, ZEP2_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.1.D, AP2C_HUMAN.H11MO.0.A, ETS1_HUMAN.H11MO.0.A, KLF8_HUMAN.H11MO.0.C, ZN816_HUMAN.H11MO.0.C, FLI1_HUMAN.H11MO.1.A, ERG_HUMAN.H11MO.0.A, MZF1_HUMAN.H11MO.0.B, EGR3_HUMAN.H11MO.0.D, MYF6_HUMAN.H11MO.0.C, RXRA_HUMAN.H11MO.0.A, ETS2_HUMAN.H11MO.0.B, NFIC_HUMAN.H11MO.0.A, ETV5_HUMAN.H11MO.0.C, ZN423_HUMAN.H11MO.0.D, ZBTB6_HUMAN.H11MO.0.C, ZN322_HUMAN.H11MO.0.B, ZEP1_HUMAN.H11MO.0.D, ETV4_HUMAN.H11MO.0.B, CTCFL_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, CTCF_HUMAN.H11MO.0.A, ZN740_HUMAN.H11MO.0.D, PLAL1_HUMAN.H11MO.0.D, HEN1_HUMAN.H11MO.0.C, CXXC1_HUMAN.H11MO.0.D, ZN524_HUMAN.H11MO.0.D, ZIC1_HUMAN.H11MO.0.B, ZN350_HUMAN.H11MO.1.D, ZBT7B_HUMAN.H11MO.0.D, ETV1_HUMAN.H11MO.0.A, ELF2_HUMAN.H11MO.0.C, NFKB2_HUMAN.H11MO.0.B, MXI1_HUMAN.H11MO.0.A, SUH_HUMAN.H11MO.0.A, NR2C2_HUMAN.H11MO.0.B, ZN770_HUMAN.H11MO.1.C, ZN436_HUMAN.H11MO.0.C, BHE41_HUMAN.H11MO.0.D, REST_HUMAN.H11MO.0.A
## ABL1 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, AP2D_HUMAN.H11MO.0.D, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, KLF16_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, KLF13_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, SP4_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, E2F5_HUMAN.H11MO.0.B, CTCFL_HUMAN.H11MO.0.A, AP2B_HUMAN.H11MO.0.B, EGR2_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.0.A, ZF64A_HUMAN.H11MO.0.D, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KLF14_HUMAN.H11MO.0.D, ZN219_HUMAN.H11MO.0.D, ZN263_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, VEZF1_HUMAN.H11MO.1.C, PURA_HUMAN.H11MO.0.D, ZBT17_HUMAN.H11MO.0.A, ZSC22_HUMAN.H11MO.0.C, PLAG1_HUMAN.H11MO.0.D, CTCF_HUMAN.H11MO.0.A, PATZ1_HUMAN.H11MO.1.C, PLAL1_HUMAN.H11MO.0.D, ZN320_HUMAN.H11MO.0.C, HINFP_HUMAN.H11MO.0.C, SALL4_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, ZN524_HUMAN.H11MO.0.D, WT1_HUMAN.H11MO.1.B, GCM2_HUMAN.H11MO.0.D, INSM1_HUMAN.H11MO.0.C, ZIC1_HUMAN.H11MO.0.B, ZN263_HUMAN.H11MO.1.A, PAX5_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, SRBP2_HUMAN.H11MO.0.B, RELB_HUMAN.H11MO.0.C, ZEP2_HUMAN.H11MO.0.D, SPZ1_HUMAN.H11MO.0.D, NFKB2_HUMAN.H11MO.0.B, MXI1_HUMAN.H11MO.0.A, SUH_HUMAN.H11MO.0.A, EGR3_HUMAN.H11MO.0.D, ELK3_HUMAN.H11MO.0.D, NFIC_HUMAN.H11MO.0.A, PTF1A_HUMAN.H11MO.0.B, ZBTB6_HUMAN.H11MO.0.C, ZEP1_HUMAN.H11MO.0.D, BHA15_HUMAN.H11MO.0.B, E2F1_HUMAN.H11MO.0.A, EGR4_HUMAN.H11MO.0.D, EGR1_HUMAN.H11MO.0.A, TFDP1_HUMAN.H11MO.0.C, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, TBX1_HUMAN.H11MO.0.D, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZN467_HUMAN.H11MO.0.C, ZN341_HUMAN.H11MO.0.C, E2F6_HUMAN.H11MO.0.A, ZBT7A_HUMAN.H11MO.0.A, RFX1_HUMAN.H11MO.0.B, PROX1_HUMAN.H11MO.0.D, ZN770_HUMAN.H11MO.0.C, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, TAF1_HUMAN.H11MO.0.A, NR1H4_HUMAN.H11MO.0.B, ZN740_HUMAN.H11MO.0.D, FEV_HUMAN.H11MO.0.B, E2F3_HUMAN.H11MO.0.A, AHR_HUMAN.H11MO.0.B, GABPA_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.0.A, FLI1_HUMAN.H11MO.0.A, ELF2_HUMAN.H11MO.0.C, ETS1_HUMAN.H11MO.0.A, ELF1_HUMAN.H11MO.0.A, ELF5_HUMAN.H11MO.0.A, BHE41_HUMAN.H11MO.0.D, ETS2_HUMAN.H11MO.0.B, ZSC31_HUMAN.H11MO.0.C, KAISO_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.1.A, ZIC4_HUMAN.H11MO.0.D, KLF4_HUMAN.H11MO.0.A, SPIC_HUMAN.H11MO.0.D, ZN350_HUMAN.H11MO.1.D, ZBT7B_HUMAN.H11MO.0.D, RREB1_HUMAN.H11MO.0.D, HAND1_HUMAN.H11MO.1.D, GSC2_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.1.D, ZBTB4_HUMAN.H11MO.0.D, COT1_HUMAN.H11MO.0.C, ZN436_HUMAN.H11MO.0.C, REST_HUMAN.H11MO.0.A, TFCP2_HUMAN.H11MO.0.D, ZNF76_HUMAN.H11MO.0.C, HEN1_HUMAN.H11MO.0.C, HES1_HUMAN.H11MO.0.D, AP2C_HUMAN.H11MO.0.A, ZN816_HUMAN.H11MO.0.C, NKX25_HUMAN.H11MO.0.B, ARNT_HUMAN.H11MO.0.B, NR2C2_HUMAN.H11MO.0.B, XBP1_HUMAN.H11MO.0.D, HIF1A_HUMAN.H11MO.0.C, MYCN_HUMAN.H11MO.0.A, ZN423_HUMAN.H11MO.0.D, ZN322_HUMAN.H11MO.0.B, EPAS1_HUMAN.H11MO.0.B, CENPB_HUMAN.H11MO.0.D, GLIS2_HUMAN.H11MO.0.D, MTF1_HUMAN.H11MO.0.C, ZN331_HUMAN.H11MO.0.C, MZF1_HUMAN.H11MO.0.B, ZN770_HUMAN.H11MO.1.C, ETV5_HUMAN.H11MO.0.C, SPI1_HUMAN.H11MO.0.A
## ABLIM1 SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, WT1_HUMAN.H11MO.0.C, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, KLF13_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, EGR1_HUMAN.H11MO.0.A, SP4_HUMAN.H11MO.0.A, KLF15_HUMAN.H11MO.0.A, KLF1_HUMAN.H11MO.0.A, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, EGR2_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.1.A, E2F6_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, RFX1_HUMAN.H11MO.0.B, PROX1_HUMAN.H11MO.0.D, KLF5_HUMAN.H11MO.0.A, SALL4_HUMAN.H11MO.0.B, ZN524_HUMAN.H11MO.0.D, GCM2_HUMAN.H11MO.0.D, ELK4_HUMAN.H11MO.0.A, ZBT7B_HUMAN.H11MO.0.D, RREB1_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.0.D, ZN816_HUMAN.H11MO.0.C, ARNT_HUMAN.H11MO.0.B, ELK1_HUMAN.H11MO.0.B, SUH_HUMAN.H11MO.0.A, EGR3_HUMAN.H11MO.0.D, HIF1A_HUMAN.H11MO.0.C, RXRA_HUMAN.H11MO.0.A, ELK3_HUMAN.H11MO.0.D, PTF1A_HUMAN.H11MO.0.B, ZN423_HUMAN.H11MO.0.D, EPAS1_HUMAN.H11MO.0.B, BHA15_HUMAN.H11MO.0.B, ZBT14_HUMAN.H11MO.0.C, THAP1_HUMAN.H11MO.0.C, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, NRF1_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, AP2B_HUMAN.H11MO.0.B, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, ZN219_HUMAN.H11MO.0.D, PURA_HUMAN.H11MO.0.D, ZN770_HUMAN.H11MO.0.C, ZBT17_HUMAN.H11MO.0.A, CENPB_HUMAN.H11MO.0.D, TAF1_HUMAN.H11MO.0.A, KLF4_HUMAN.H11MO.0.A, HEN1_HUMAN.H11MO.0.C, AHR_HUMAN.H11MO.0.B, GABPA_HUMAN.H11MO.0.A, HES1_HUMAN.H11MO.0.D, GLIS1_HUMAN.H11MO.0.D, FLI1_HUMAN.H11MO.0.A, PAX5_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, SRBP2_HUMAN.H11MO.0.B, OVOL2_HUMAN.H11MO.0.D, ELF2_HUMAN.H11MO.0.C, ETS1_HUMAN.H11MO.0.A, FLI1_HUMAN.H11MO.1.A, NFKB2_HUMAN.H11MO.0.B, ELF1_HUMAN.H11MO.0.A, ETV2_HUMAN.H11MO.0.B, ERG_HUMAN.H11MO.0.A, RFX5_HUMAN.H11MO.0.A, ETS2_HUMAN.H11MO.0.B, NFIC_HUMAN.H11MO.0.A, ETV5_HUMAN.H11MO.0.C, ZN331_HUMAN.H11MO.0.C, ZNF76_HUMAN.H11MO.0.C, ESR2_HUMAN.H11MO.0.A, SPI1_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.0.A, FEV_HUMAN.H11MO.0.B, E2F3_HUMAN.H11MO.0.A, ARNT2_HUMAN.H11MO.0.D, ZFX_HUMAN.H11MO.0.A, ETV1_HUMAN.H11MO.0.A, HAND1_HUMAN.H11MO.1.D, KAISO_HUMAN.H11MO.2.A, TFCP2_HUMAN.H11MO.0.D, ETV4_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, PATZ1_HUMAN.H11MO.0.C, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, TFDP1_HUMAN.H11MO.0.C, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, ZIC4_HUMAN.H11MO.0.D, PLAG1_HUMAN.H11MO.0.D, NR1H4_HUMAN.H11MO.0.B, PLAL1_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.1.D, SPZ1_HUMAN.H11MO.0.D, AP2C_HUMAN.H11MO.0.A, MYF6_HUMAN.H11MO.0.C, ZSC31_HUMAN.H11MO.0.C
## ABTB1 SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, AP2D_HUMAN.H11MO.0.D, MECP2_HUMAN.H11MO.0.C, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, EGR4_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, CTCFL_HUMAN.H11MO.0.A, AP2B_HUMAN.H11MO.0.B, TBX1_HUMAN.H11MO.0.D, ZFX_HUMAN.H11MO.1.A, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, KAISO_HUMAN.H11MO.1.A, ZN341_HUMAN.H11MO.0.C, ZN263_HUMAN.H11MO.0.A, RFX1_HUMAN.H11MO.0.B, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, ZSC22_HUMAN.H11MO.0.C, CTCF_HUMAN.H11MO.0.A, PATZ1_HUMAN.H11MO.1.C, KLF4_HUMAN.H11MO.0.A, ZN320_HUMAN.H11MO.0.C, FEV_HUMAN.H11MO.0.B, HEN1_HUMAN.H11MO.0.C, SALL4_HUMAN.H11MO.0.B, ZFX_HUMAN.H11MO.0.A, WT1_HUMAN.H11MO.1.B, GCM2_HUMAN.H11MO.0.D, ZN263_HUMAN.H11MO.1.A, ZN350_HUMAN.H11MO.1.D, HAND1_HUMAN.H11MO.1.D, SPZ1_HUMAN.H11MO.0.D, AP2C_HUMAN.H11MO.0.A, NFKB2_HUMAN.H11MO.0.B, NKX25_HUMAN.H11MO.0.B, MXI1_HUMAN.H11MO.0.A, MYF6_HUMAN.H11MO.0.C, ZN436_HUMAN.H11MO.0.C, ZN563_HUMAN.H11MO.0.C, ELK3_HUMAN.H11MO.0.D, PTF1A_HUMAN.H11MO.0.B, ZSC31_HUMAN.H11MO.0.C, ZEP1_HUMAN.H11MO.0.D, ESR2_HUMAN.H11MO.0.A, BHA15_HUMAN.H11MO.0.B, COE1_HUMAN.H11MO.0.A
## AC000036.4 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.1.A, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, KLF16_HUMAN.H11MO.0.D, EGR4_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, KLF13_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.1.A, EGR1_HUMAN.H11MO.0.A, TFDP1_HUMAN.H11MO.0.C, SP4_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, SP2_HUMAN.H11MO.1.B, KLF1_HUMAN.H11MO.0.A, CTCFL_HUMAN.H11MO.0.A, AP2B_HUMAN.H11MO.0.B, TBX1_HUMAN.H11MO.0.D, EGR2_HUMAN.H11MO.1.A, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, E2F7_HUMAN.H11MO.0.B, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KLF14_HUMAN.H11MO.0.D, ZN341_HUMAN.H11MO.0.C, ZN219_HUMAN.H11MO.0.D, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, ZBT7A_HUMAN.H11MO.0.A, VEZF1_HUMAN.H11MO.1.C, RFX1_HUMAN.H11MO.0.B, PURA_HUMAN.H11MO.0.D, PROX1_HUMAN.H11MO.0.D, ZN770_HUMAN.H11MO.0.C, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, ZBT17_HUMAN.H11MO.0.A, ZSC22_HUMAN.H11MO.0.C, TAF1_HUMAN.H11MO.0.A, ZIC4_HUMAN.H11MO.0.D, PLAG1_HUMAN.H11MO.0.D, CTCF_HUMAN.H11MO.0.A, GLIS2_HUMAN.H11MO.0.D, NR1H4_HUMAN.H11MO.0.B, PATZ1_HUMAN.H11MO.1.C, ZN740_HUMAN.H11MO.0.D, KLF4_HUMAN.H11MO.0.A, FEV_HUMAN.H11MO.0.B, HINFP_HUMAN.H11MO.0.C, SALL4_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, CXXC1_HUMAN.H11MO.0.D, GABPA_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.0.A, WT1_HUMAN.H11MO.1.B, ELK4_HUMAN.H11MO.0.A, ZIC1_HUMAN.H11MO.0.B, ZN263_HUMAN.H11MO.1.A, ZBT7B_HUMAN.H11MO.0.D, ETV1_HUMAN.H11MO.0.A, GLIS1_HUMAN.H11MO.0.D, PAX5_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, RREB1_HUMAN.H11MO.0.D, HAND1_HUMAN.H11MO.1.D, SPZ1_HUMAN.H11MO.0.D, KLF8_HUMAN.H11MO.0.C, MXI1_HUMAN.H11MO.0.A, XBP1_HUMAN.H11MO.0.D, ZN563_HUMAN.H11MO.0.C, RXRA_HUMAN.H11MO.0.A, TFCP2_HUMAN.H11MO.0.D, PTF1A_HUMAN.H11MO.0.B, ZSC31_HUMAN.H11MO.0.C, ZBTB6_HUMAN.H11MO.0.C, ZN331_HUMAN.H11MO.0.C, ZNF76_HUMAN.H11MO.0.C, ESR2_HUMAN.H11MO.0.A, BHA15_HUMAN.H11MO.0.B, COE1_HUMAN.H11MO.0.A
## AC002064.5 ZBT14_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.0.A, SP3_HUMAN.H11MO.0.B, E2F4_HUMAN.H11MO.0.A, SP1_HUMAN.H11MO.1.A, THAP1_HUMAN.H11MO.0.C, KLF3_HUMAN.H11MO.0.B, MBD2_HUMAN.H11MO.0.B, AP2D_HUMAN.H11MO.0.D, E2F1_HUMAN.H11MO.0.A, MECP2_HUMAN.H11MO.0.C, E2F2_HUMAN.H11MO.0.B, WT1_HUMAN.H11MO.0.C, PATZ1_HUMAN.H11MO.0.C, NRF1_HUMAN.H11MO.0.A, KLF16_HUMAN.H11MO.0.D, KLF12_HUMAN.H11MO.0.C, KLF6_HUMAN.H11MO.0.A, ZN148_HUMAN.H11MO.0.D, KLF13_HUMAN.H11MO.0.D, TBX15_HUMAN.H11MO.0.D, SP4_HUMAN.H11MO.1.A, EGR1_HUMAN.H11MO.0.A, SP4_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.0.A, KLF9_HUMAN.H11MO.0.C, KLF15_HUMAN.H11MO.0.A, ZN281_HUMAN.H11MO.0.A, KLF1_HUMAN.H11MO.0.A, CTCFL_HUMAN.H11MO.0.A, AP2B_HUMAN.H11MO.0.B, MAZ_HUMAN.H11MO.0.A, ZFX_HUMAN.H11MO.1.A, ZF64A_HUMAN.H11MO.0.D, ZN467_HUMAN.H11MO.0.C, VEZF1_HUMAN.H11MO.0.C, EGR2_HUMAN.H11MO.0.A, KAISO_HUMAN.H11MO.1.A, ZN341_HUMAN.H11MO.0.C, E2F6_HUMAN.H11MO.0.A, ZN263_HUMAN.H11MO.0.A, NR0B1_HUMAN.H11MO.0.D, KLF5_HUMAN.H11MO.0.A, HEY2_HUMAN.H11MO.0.D, ZSC22_HUMAN.H11MO.0.C, ZIC4_HUMAN.H11MO.0.D, PLAG1_HUMAN.H11MO.0.D, CTCF_HUMAN.H11MO.0.A, NR1H4_HUMAN.H11MO.0.B, PATZ1_HUMAN.H11MO.1.C, PLAL1_HUMAN.H11MO.0.D, ZN320_HUMAN.H11MO.0.C, FEV_HUMAN.H11MO.0.B, SALL4_HUMAN.H11MO.0.B, ARNT2_HUMAN.H11MO.0.D, CXXC1_HUMAN.H11MO.0.D, GABPA_HUMAN.H11MO.0.A, WT1_HUMAN.H11MO.1.B, INSM1_HUMAN.H11MO.0.C, ZN263_HUMAN.H11MO.1.A, HES1_HUMAN.H11MO.0.D, GLIS1_HUMAN.H11MO.0.D, PAX5_HUMAN.H11MO.0.A, GLIS3_HUMAN.H11MO.0.D, MTF1_HUMAN.H11MO.0.C, SRBP2_HUMAN.H11MO.0.B, SPZ1_HUMAN.H11MO.0.D, ZBTB4_HUMAN.H11MO.0.D, NKX25_HUMAN.H11MO.0.B, MXI1_HUMAN.H11MO.0.A, MYBA_HUMAN.H11MO.0.D, NR2C2_HUMAN.H11MO.0.B, XBP1_HUMAN.H11MO.0.D, ZN770_HUMAN.H11MO.1.C, ZN563_HUMAN.H11MO.0.C, BHE41_HUMAN.H11MO.0.D, MYCN_HUMAN.H11MO.0.A, TFCP2_HUMAN.H11MO.0.D, ESR2_HUMAN.H11MO.0.A, EGR4_HUMAN.H11MO.0.D, MAZ_HUMAN.H11MO.1.A, TFDP1_HUMAN.H11MO.0.C, SP2_HUMAN.H11MO.1.B, TBX1_HUMAN.H11MO.0.D, E2F7_HUMAN.H11MO.0.B, VEZF1_HUMAN.H11MO.1.C, ZN770_HUMAN.H11MO.0.C, ZBT17_HUMAN.H11MO.0.A, TAF1_HUMAN.H11MO.0.A, GLIS2_HUMAN.H11MO.0.D, KLF4_HUMAN.H11MO.0.A, HEN1_HUMAN.H11MO.0.C, E2F3_HUMAN.H11MO.0.A, ZN350_HUMAN.H11MO.1.D, FLI1_HUMAN.H11MO.0.A, AP2C_HUMAN.H11MO.0.A, KLF8_HUMAN.H11MO.0.C, SUH_HUMAN.H11MO.0.A, COT1_HUMAN.H11MO.0.C, EGR3_HUMAN.H11MO.0.D, RXRA_HUMAN.H11MO.0.A, ZSC31_HUMAN.H11MO.0.C, RELB_HUMAN.H11MO.0.C
I am particularly interested in Leukocyte transendothelial migration pathway, since they are the gatekeeper of immune infiltration in cancer. Lets plot gene differential expression results on LTM pathway to visualize its changes.
library(clusterProfiler)
library(SummarizedExperiment)
library(pathview)
# DEGs TopTable
dataDEGsFiltLevel <- TCGAanalyze_LevelTab(
FC_FDR_table_mRNA = diff_expressed_genes,
typeCond1 = "Tumor",
typeCond2 = "Normal",
TableCond1 = exp_filtered_tumor,
TableCond2 = exp_filtered_normal
)
dataDEGsFiltLevel$GeneID <- 0
# Converting Gene symbol to geneID
eg = as.data.frame(
bitr(
dataDEGsFiltLevel$mRNA,
fromType = "ENSEMBL",
toType = c("ENTREZID","SYMBOL"),
OrgDb = "org.Hs.eg.db"
)
)
eg <- eg[!duplicated(eg$SYMBOL),]
eg <- eg[order(eg$SYMBOL,decreasing=FALSE),]
dataDEGsFiltLevel <- dataDEGsFiltLevel[dataDEGsFiltLevel$mRNA %in% eg$ENSEMBL,]
dataDEGsFiltLevel <- dataDEGsFiltLevel[eg$ENSEMBL,]
rownames(dataDEGsFiltLevel) <- eg$SYMBOL
all(eg$SYMBOL == rownames(dataDEGsFiltLevel))
dataDEGsFiltLevel$GeneID <- eg$ENTREZID
dataDEGsFiltLevel_sub <- subset(dataDEGsFiltLevel, select = c("GeneID", "logFC"))
genelistDEGs <- as.numeric(dataDEGsFiltLevel_sub$logFC)
names(genelistDEGs) <- dataDEGsFiltLevel_sub$GeneID
hsa04670 <- pathview::pathview(
gene.data = genelistDEGs,
pathway.id = "hsa04670",
species = "hsa"
)
knitr::include_graphics("hsa04670.pathview.png")
Changes in methylation patterns can significantly impact gene expression by altering the accessibility of transcription factors to their binding motifs on the DNA, thus influencing the transcriptional activity of genes. Identifying differentially methylated transcription factor binding motifs on differentially expressed genes is crucial, as it helps unravel the epigenetic mechanisms underlying gene regulation and disease progression, offering potential targets for therapeutic intervention.
knitr::include_graphics("methylation_diffGene.png")
I further decided to analyze expression changes in LTM pathway across 23 different can types using the above workflow. There are few patterns of gene expression changes across multiple cancers. For example, Matrix Metalloproteinase 9 (MMP9) is highly upregulated across most of the cancer types, which is an essential component that digests. Matrix Metalloproteinase 9 (MMP-9), also known as gelatinase B, plays a crucial role in various physiological and pathological processes, including tissue remodeling, inflammation, and cancer metastasis. One of its key roles in the immune response is facilitating leukocyte transendothelial migration (TEM), which is the process by which leukocytes move from the bloodstream across the endothelial barrier into tissues. MMP-9 can also degrade various components of the basement membrane and extracellular matrix (ECM), such as collagen and gelatin. This degradation is crucial for leukocytes to penetrate these barriers during their migration from blood vessels into the tissue. MMP-9 can modulate the activity of cell adhesion molecules on the endothelial surface. For example, it can cleave and activate TNF-α, leading to increased expression of adhesion molecules like ICAM-1 and VCAM-1 on endothelial cells, which facilitate the firm adhesion of leukocytes to the endothelium.
knitr::include_graphics("pancancer_lfc.png")
There is a lot that can be done using this workflow and the datasets produced by it. I am currently working on set of pathways associated with immune infiltration acorss pan-cancer. I will keep adding more R scripts here to take this workflow further to identify cross-network analysis combining methylation, gene expression. miRNA expression, copy number variants, and alternate splicing. I will keep you all posted.