Sharing statistical methods or simulation frameworks through 'shiny' applications often requires workflows for handling data. To help save and display simulation results, the postgresUI() and postgresServer() functions in 'mmints' help with persistent data storage using a 'PostgreSQL' database. The 'mmints' package also offers data upload functionality through the csvUploadUI() and csvUploadServer() functions which allow users to upload data, view variables and their types, and edit variable types before fitting statistical models within the 'shiny' application. These tools aim to enhance efficiency and user interaction in 'shiny' based statistical and simulation applications.
The ‘mmints’ (Mighty Metrika Internals) package aims to automate tasks commonly used in ‘shiny’ applications. It primarily consists of internal functions and modules frequently utilized in other Mighty Metrika ‘shiny’ applications.
You can install the released version of ‘mmints’ from CRAN:
install.packages("mmints")
You can install the development version of ‘mmints’ from GitHub with:
# install.packages("pak")
pak::pak("mightymetrika/mmints")
One feature of ‘mmints’ is the csvUploadModule, which simplifies the process of: 1. Uploading a CSV data file 2. Displaying the variables and data types as a ‘DT’ data table 3. Providing functionality for editing variable types
Here’s how to use the csvUploadModule:
library(mmints)
csvUpload_app <- function(){
ui <- shiny::fluidPage(
shiny::titlePanel("CSV Upload Module"),
shiny::sidebarLayout(
shiny::sidebarPanel(
csvUploadUI("data_upload")$input
),
shiny::mainPanel(
csvUploadUI("data_upload")$output
)
)
)
server <- function(input, output, session) {
data <- csvUploadServer("data_upload")
}
shiny::shinyApp(ui, server)
}
if(interactive()){
csvUpload_app()
}
This project is licensed under the MIT License.
For any queries or suggestions, please open an issue on the GitHub repository.