Nothing
knitr::opts_chunk$set(echo = TRUE) library(psycho) library(Hmisc) library(corrgram) library(dplyr) library(rpivotTable) library(psych) library(datasets)
sidebarPanel( inputPanel( checkboxInput("P","Check if you want to use pre-loaded datasets",value = TRUE), selectInput("ds","Choose dataset you wish to explore",choices = c("iris","esoph","anscombe","cars","attitude","chickwts","Orange","ToothGrowth","BOD")) ), inputPanel( fileInput("file", "Upload the *.csv file with headers"), checkboxInput("std","standardize",value = FALSE), downloadButton("downloadStdData", "Download dataset") ), inputPanel( uiOutput("vx"), uiOutput("vx2"), uiOutput("vx3") ), inputPanel( selectInput("col","Choose Color",choices = c("red","green","blue","yellow")) ), inputPanel( downloadButton("downloadPlot2", "Download Histogram"), downloadButton("downloadPlot3", "Download Pie Chart"), downloadButton("downloadPlot4", "Download Box Plot"), downloadButton("downloadPlot5", "Download Association Plot"), downloadButton("downloadPlot", "Download Correlation Plot"), downloadButton("downloadCorMat", "Download Correlation Matrix"), downloadButton("downloadReport", "Download Descriptives Report"), downloadButton("downloadReport2", "Download Summary Report") ) ) mainPanel( tabsetPanel(type = "tab", tabPanel("Descriptives", verbatimTextOutput("AD")), tabPanel("Histogram",plotOutput("HG")), tabPanel("Pie Chart",plotOutput("PC")), tabPanel("Box Plot",plotOutput("BP")), tabPanel("Association Plot",plotOutput("AP")), tabPanel("Correlation Plot",plotOutput("CP")), tabPanel("Correlation Summary",verbatimTextOutput("SUM")), tabPanel("Interactive Dashboard",rpivotTableOutput("PT")) ),width = 8 ) output$AD<-renderPrint({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ cat(sprintf("\nThis is about dataset : %s\n", input$ds)) data( input$ds) data = get(input$ds) } cat(sprintf("\nSnapshot of the dataset\n")) if(input$std == TRUE) {data = data.frame(standardize(data))} print(head(data,6)) cat(sprintf("\nSummary of the dataset\n\n")) print(summary(data)) df = select_if(data,is.numeric) cat(sprintf("\n\n Detailed descriptive statistics of Quantitative Variables are as follows\n\n")) print(describe(df)) }) output$CP<-renderPlot({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ cat(sprintf("\nThis is about dataset : %s\n", input$ds)) data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} corrgram(data,order = TRUE,lower.panel = panel.shade,upper.panel = panel.pie,main ="Corrgram") }) output$SUM<-renderPrint({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ cat(sprintf("\nThis is about dataset : %s\n", input$ds)) data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) cat(sprintf("\n Correlation Summary of the dataset\n")) cor = rcorr(as.matrix(df))$r print(cor) }) datasetInput1 <- reactive({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data_set = data.frame(standardize(data))} else {data_set = data} }) output$downloadStdData <- downloadHandler( filename = function() { filetitle = paste("dataset") paste(filetitle, ".csv", sep = "") }, content = function(file) { write.csv(datasetInput1(), file, row.names = FALSE) } ) output$downloadPlot<- downloadHandler( filename = function() { paste("Correlationplot", ".png", sep = "") }, content = function(file) { png(file) if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ cat(sprintf("\nThis is about dataset : %s\n", input$ds)) data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} corrgram(data,order = TRUE,lower.panel = panel.shade,upper.panel = panel.pie,main ="Corrgram") dev.off() }) datasetInput2 <- reactive({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) data = data.frame(rcorr(as.matrix(df))$r) }) output$downloadCorMat <- downloadHandler( filename = function() { filetitle = paste("dataset") paste(filetitle, ".csv", sep = "") }, content = function(file) { write.csv(datasetInput2(), file) } ) output$PT<-renderRpivotTable({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} rpivotTable(data) }) output$vx <- renderUI({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) selectInput("variablex","Select the Quantitative variable for histogram",choices = colnames(df),selected = "" ) }) output$HG<-renderPlot({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) attach(df) hist(get(input$variablex),col = input$col,main = "Histogram",xlab = input$variablex) }) output$downloadPlot2<- downloadHandler( filename = function() { paste("Histogram", ".png", sep = "") }, content = function(file) { png(file) if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) attach(df) hist(get(input$variablex),col = input$col,main = "Histogram",xlab = input$variablex) dev.off() }) output$vx2 <- renderUI({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.factor) selectInput("variablex2","Select the Qualitative variable for PieChart",choices = colnames(df),selected = "" ) }) output$vx3 <- renderUI({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.factor) selectInput("variablex3","Select the Second Qualitative variable",choices = colnames(df),selected = "" ) }) output$PC<-renderPlot({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.factor) attach(df) x = get(input$variablex2) frequency = table(x) lbls = paste(names(frequency), "\n", sep="") pct = round(frequency/sum(frequency)*100) lbls = paste(lbls, pct) # add percents to labels lbls = paste(lbls,"%",sep="") # ad % to labels pie(frequency,labels = lbls, col=rainbow(length(frequency)),main = input$variablex2) }) output$downloadPlot3<- downloadHandler( filename = function() { paste("Pie", ".png", sep = "") }, content = function(file) { png(file) if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.factor) attach(df) x = get(input$variablex2) frequency = table(x) lbls = paste(names(frequency), "\n", sep="") pct = round(frequency/sum(frequency)*100) lbls = paste(lbls, pct) # add percents to labels lbls = paste(lbls,"%",sep="") # ad % to labels pie(frequency,labels = lbls, col=rainbow(length(frequency)),main = input$variablex2) dev.off() }) output$BP<-renderPlot({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = data attach(df) boxplot(get(input$variablex) ~ get(input$variablex2),col = input$col,main = "Box Plot",xlab = input$variablex2,ylab = input$variablex) }) output$downloadPlot4<- downloadHandler( filename = function() { paste("BoxPlot", ".png", sep = "") }, content = function(file) { png(file) if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = data attach(df) boxplot(get(input$variablex) ~ get(input$variablex2),col = input$col,main = "Box Plot",xlab = input$variablex2,ylab = input$variablex) dev.off() }) output$AP<-renderPlot({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.factor) attach(df) x = get(input$variablex2) y = get(input$variablex3) frequency = table(x,y) assocplot(frequency,col =c("green","red"),xlab = input$variablex2,ylab = input$variablex3,main = "Association Plot") }) output$downloadPlot5<- downloadHandler( filename = function() { paste("AssociationPlot", ".png", sep = "") }, content = function(file) { png(file) if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} df = data attach(df) x = get(input$variablex2) y = get(input$variablex3) frequency = table(x,y) assocplot(frequency,col =c("green","red"),xlab = input$variablex2,ylab = input$variablex3,main = "Association Plot") dev.off() }) h6("", tags$img(src ="K.JPG", height= 400, width=400)) datasetInput3 <- reactive({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} if(input$std == TRUE) {data = data.frame(standardize(data))} df = select_if(data,is.numeric) datareport = capture.output(print(describe(df))) }) output$downloadReport <- downloadHandler( filename = function() { filetitle = paste("Descriptive_report") paste(filetitle, ".doc", sep = "") }, content = function(file) { write.file(datasetInput3(), file) } ) datasetInput4 <- reactive({ if(input$P == FALSE) { file1 = input$file if(is.null(file1)){return()} data = read.table(file = file1$datapath,sep =",",header = TRUE) if(is.null(data())){return()} } if(input$P == TRUE){ data( input$ds) data = get(input$ds) } if(input$std == TRUE) {data = data.frame(standardize(data))} if(input$std == TRUE) {data = data.frame(standardize(data))} datareport = capture.output(print(summary(data))) }) output$downloadReport2 <- downloadHandler( filename = function() { filetitle = paste("Summary_report") paste(filetitle, ".doc", sep = "") }, content = function(file) { write.file(datasetInput4(), file) } )
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.