| @ -0,0 +1,72 @@ | |||
| library(shiny) | |||
| library(seqRFLP) | |||
| library(reversetranslate) | |||
| # Define UI | |||
| ui <- fluidPage( | |||
| # Application title | |||
| titlePanel("Reverse tranlation"), | |||
| navbarPage("Apps", | |||
| tabPanel("Translation", | |||
| sidebarPanel( | |||
| fileInput("file1", "Sube fichero mfasta", multiple = FALSE), | |||
| selectInput("spec", label = h3("Specie"), | |||
| choices = list("Human" = 1, "E. Coli" = 2), | |||
| selected = 1), | |||
| actionButton("calab", "Analizar") | |||
| ), | |||
| mainPanel( | |||
| textAreaInput("seqText", label="Enter mFasta text", width = "100%", height = "500px", value=""), | |||
| # tags$head(tags$style(HTML("pre { white-space: pre-wrap; word-break: break-all; }"))), | |||
| htmlOutput("seqDNA") | |||
| ) | |||
| ), | |||
| tabPanel("Codon Frequency Table", | |||
| mainPanel( | |||
| tableOutput("tbl") | |||
| ) | |||
| ) | |||
| ) | |||
| ) | |||
| # Define server | |||
| server <- function(input, output) { | |||
| output$seqDNA <- renderText({ | |||
| if (input$seqText == ""){ | |||
| print("Result") | |||
| }else{ | |||
| seqs<-strsplit(input$seqText,"\n")[[1]] | |||
| names_seqs<-seqs[grepl("^>",seqs)] | |||
| names_seqs<-gsub(">","", names_seqs) | |||
| seqs<-seqs[!grepl("^>", seqs)] | |||
| if(input$spec == 1){spec<-hsapien_tbl} | |||
| if(input$spec == 2){spec<-ecoli_tbl} | |||
| seqs_DNA<-c() | |||
| progress <- shiny::Progress$new(min=0, max=length(seqs)) | |||
| for (i in 1:length(seqs)){ | |||
| set.seed(123) | |||
| seqs_DNA<-c(seqsDNA<-reverse_translate(seqs[i],spec)) | |||
| progress$set(message = "Reverse Translating", value = i) | |||
| } | |||
| paste(dataframe2fas(data.frame(names=names_seqs, | |||
| seqs=seqs_DNA)), collapse="<br>") | |||
| } | |||
| }) | |||
| { | |||
| output$tbl <- renderTable({ | |||
| if(input$spec == 1){spec<-hsapien_tbl} | |||
| if(input$spec == 2){spec<-ecoli_tbl} | |||
| spec %>% arrange(aa) | |||
| }) | |||
| } | |||
| } | |||
| # Run the application | |||
| shinyApp(ui = ui, server = server) | |||