R/GPo_of_hotspots.R
aa9212ce
 GPo_of_hotspots <- function(hotspot_mutations){
8f5081c0
     hotspot_mutations$AA_position <- paste(hotspot_mutations$Ensembl_id, "-", 
                                            hotspot_mutations$Prot_position, 
                                            sep = "")
aa9212ce
     TestData$AA_position <- paste(TestData$Ensembl_gene_id, "-", 
                                   TestData$Protein_residue, sep = "")
8f5081c0
     cols_of_interest <- c("Genomic_coordinate", "Original_base", 
                           "Mutated_base", "AA_position")
aa9212ce
     hotspots_genomic_info <- unique(TestData[TestData$AA_position %in% 
8f5081c0
                                                  hotspot_mutations$AA_position, 
                                              cols_of_interest])
aa9212ce
     coordinates_sep <- data.frame(do.call('rbind', 
                                           strsplit(as.character(hotspots_genomic_info$Genomic_coordinate),
                                                    ':',fixed=TRUE)))
     prot_residue_info <- data.frame(do.call('rbind', 
                                             strsplit(as.character(hotspots_genomic_info$AA_position),
                                                      '-',fixed=TRUE)))
b430497f
     chr_info = paste("chr", coordinates_sep$X1)
     position_on_chr = coordinates_sep$X2
     hotspots_GPo <- GPos(seqnames=chr_info, pos= position_on_chr, stitch=FALSE)
aa9212ce
     
     GenomicRanges::mcols(hotspots_GPo)$REF_NT <- as.character(hotspots_genomic_info$Original_base)
     GenomicRanges::mcols(hotspots_GPo)$MUT_NT <- as.character(hotspots_genomic_info$Mutated_base)
     GenomicRanges::mcols(hotspots_GPo)$Gene_ID <- as.character(prot_residue_info$X1)
     GenomicRanges::mcols(hotspots_GPo)$Protein_pos <- as.character(prot_residue_info$X2)
     
     return(hotspots_GPo)
 }