Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- library(shiny)
- library(lme4)
- shinyServer(function(input, output) {
- #Return the requested data
- datasetInput <- reactive({
- # input$file1 will be NULL initially. After the user selects
- # and uploads a file, it will be a data frame with 'name',
- # 'size', 'type', and 'datapath' columns. The 'datapath'
- # column will contain the local filenames where the data can
- # be found.
- inFile <- input$file1
- if (is.null(inFile))
- return(NULL)
- read.csv(inFile$datapath, header=input$header, sep=input$sep,
- quote=input$quote)
- })
- # Show the first "n" observations
- output$table <- renderTable({
- head(datasetInput(), n = 20)
- })
- # Generate a summary of the dataset
- output$summary <- renderPrint({
- dataset <- datasetInput()
- summary(dataset)
- })
- # Select a response variable
- output$varselect <- renderUI({
- cols <- names(datasetInput())
- selectInput("variable", "Select a response variable:",choices=cols, selected=cols)
- })
- # Select a random effect variable
- output$varselect2 <- renderUI({
- cols <- names(datasetInput())
- selectInput("variable2", "Select a random effect variable:",choices=cols, selected=cols)
- })
- # Select time variable
- output$varselect3 <- renderUI({
- cols <- names(datasetInput())
- checkboxGroupInput("variable3", "Depends on which variable:",choices=cols)
- })
- # Select other factor variable
- output$varselect4<- renderUI({
- cols <- names(datasetInput())
- checkboxGroupInput("variable4", "Group factor variable:",choices=cols)
- })
- # Generate a analysis of the dataset(REML=FALSE)
- output$analysis<- renderPrint({
- dataset<-datasetInput()
- datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
- datafile[,4]<-as.factor(datafile[,4])
- col<-dim(datafile)[2]
- p<-length(levels(datafile[,4]))+2
- name<-names(datafile)
- test<-paste(name[1],"~","1+",name[4],":",name[3])
- form<-as.formula(test)
- fit<-lm(form,data=datafile)
- AIC<-as.numeric(logLik(fit))*(-2)+2*p
- result<-list(summary(fit),AIC)
- names(result)<-c("Summary","AIC")
- result
- })
- # Generate a analysis of the dataset(REML=FALSE)
- output$analysis2<- renderPrint({
- dataset<-datasetInput()
- datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
- datafile[,4]<-as.factor(datafile[,4])
- col<-dim(datafile)[2]
- name<-names(datafile)
- test<-paste(name[1],"~","1+(1|",name[2],")","+",name[4],":",name[3])
- form<-as.formula(test)
- fit<-lmer(form,data=datafile,REML=FALSE)
- summary(fit)
- })
- # Generate a analysis of the dataset(REML=FALSE)
- output$analysis3<- renderPrint({
- dataset<-datasetInput()
- datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
- datafile[,4]<-as.factor(datafile[,4])
- col<-dim(datafile)[2]
- name<-names(datafile)
- test<-paste(name[1],"~","1+(1+",name[3],"|",name[2],")","+",name[4],":",name[3])
- form<-as.formula(test)
- fit<-lmer(form,data=datafile,REML=FALSE)
- summary(fit)
- })
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement