Advertisement
Guest User

Untitled

a guest
Jul 5th, 2015
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. library(shiny)
  2. library(lme4)
  3.  
  4. shinyServer(function(input, output) {
  5.  
  6. #Return the requested data
  7.  
  8. datasetInput <- reactive({
  9.  
  10. # input$file1 will be NULL initially. After the user selects
  11. # and uploads a file, it will be a data frame with 'name',
  12. # 'size', 'type', and 'datapath' columns. The 'datapath'
  13. # column will contain the local filenames where the data can
  14. # be found.
  15.  
  16. inFile <- input$file1
  17.  
  18. if (is.null(inFile))
  19. return(NULL)
  20.  
  21. read.csv(inFile$datapath, header=input$header, sep=input$sep,
  22. quote=input$quote)
  23.  
  24. })
  25.  
  26. # Show the first "n" observations
  27. output$table <- renderTable({
  28. head(datasetInput(), n = 20)
  29. })
  30.  
  31. # Generate a summary of the dataset
  32. output$summary <- renderPrint({
  33. dataset <- datasetInput()
  34. summary(dataset)
  35. })
  36.  
  37. # Select a response variable
  38.  
  39. output$varselect <- renderUI({
  40. cols <- names(datasetInput())
  41. selectInput("variable", "Select a response variable:",choices=cols, selected=cols)
  42.  
  43. })
  44.  
  45. # Select a random effect variable
  46. output$varselect2 <- renderUI({
  47. cols <- names(datasetInput())
  48. selectInput("variable2", "Select a random effect variable:",choices=cols, selected=cols)
  49.  
  50. })
  51.  
  52. # Select time variable
  53. output$varselect3 <- renderUI({
  54. cols <- names(datasetInput())
  55. checkboxGroupInput("variable3", "Depends on which variable:",choices=cols)
  56. })
  57.  
  58. # Select other factor variable
  59. output$varselect4<- renderUI({
  60. cols <- names(datasetInput())
  61. checkboxGroupInput("variable4", "Group factor variable:",choices=cols)
  62. })
  63.  
  64. # Generate a analysis of the dataset(REML=FALSE)
  65. output$analysis<- renderPrint({
  66. dataset<-datasetInput()
  67. datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
  68. datafile[,4]<-as.factor(datafile[,4])
  69. col<-dim(datafile)[2]
  70. p<-length(levels(datafile[,4]))+2
  71. name<-names(datafile)
  72. test<-paste(name[1],"~","1+",name[4],":",name[3])
  73. form<-as.formula(test)
  74. fit<-lm(form,data=datafile)
  75. AIC<-as.numeric(logLik(fit))*(-2)+2*p
  76. result<-list(summary(fit),AIC)
  77. names(result)<-c("Summary","AIC")
  78. result
  79. })
  80.  
  81. # Generate a analysis of the dataset(REML=FALSE)
  82. output$analysis2<- renderPrint({
  83. dataset<-datasetInput()
  84. datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
  85. datafile[,4]<-as.factor(datafile[,4])
  86. col<-dim(datafile)[2]
  87. name<-names(datafile)
  88. test<-paste(name[1],"~","1+(1|",name[2],")","+",name[4],":",name[3])
  89. form<-as.formula(test)
  90. fit<-lmer(form,data=datafile,REML=FALSE)
  91. summary(fit)
  92. })
  93.  
  94. # Generate a analysis of the dataset(REML=FALSE)
  95. output$analysis3<- renderPrint({
  96. dataset<-datasetInput()
  97. datafile<-dataset[,c(input$variable,input$variable2,input $variable3,input$variable4),drop=FALSE]
  98. datafile[,4]<-as.factor(datafile[,4])
  99. col<-dim(datafile)[2]
  100. name<-names(datafile)
  101. test<-paste(name[1],"~","1+(1+",name[3],"|",name[2],")","+",name[4],":",name[3])
  102. form<-as.formula(test)
  103. fit<-lmer(form,data=datafile,REML=FALSE)
  104. summary(fit)
  105. })
  106. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement