import-globalenv: Import data from an Environment

Description Usage Arguments Value Examples

Description

Let the user select a dataset from its own environment or from a package's environment.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import_globalenv_ui(
  id,
  globalenv = TRUE,
  packages = get_data_packages(),
  title = TRUE
)

import_globalenv_server(
  id,
  btn_show_data = TRUE,
  trigger_return = c("button", "change"),
  return_class = c("data.frame", "data.table", "tbl_df"),
  reset = reactive(NULL)
)

Arguments

id

Module's ID.

globalenv

Search for data in Global environment.

packages

Name of packages in which to search data.

title

Module's title, if TRUE use the default title, use NULL for no title or a shiny.tag for a custom one.

btn_show_data

Display or not a button to display data in a modal window if import is successful.

trigger_return

When to update selected data: "button" (when user click on button) or "change" (each time user select a dataset in the list).

return_class

Class of returned data: data.frame, data.table or tbl_df (tibble).

reset

A reactive function that when triggered resets the data.

Value

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
library(shiny)
library(datamods)

# Create some data.frames

my_df <- data.frame(
  variable1 = sample(letters, 20, TRUE),
  variable2 = sample(1:100, 20, TRUE)
)

results_analysis <- data.frame(
  id = sample(letters, 20, TRUE),
  measure = sample(1:100, 20, TRUE),
  response = sample(1:100, 20, TRUE)
)


# Application

ui <- fluidPage(
  fluidRow(
    column(
      width = 4,
      import_globalenv_ui("myid")
    ),
    column(
      width = 8,
      tags$b("Imported data:"),
      verbatimTextOutput(outputId = "status"),
      verbatimTextOutput(outputId = "name"),
      verbatimTextOutput(outputId = "data")
    )
  )
)

server <- function(input, output, session) {

  imported <- import_globalenv_server("myid")

  output$status <- renderPrint({
    imported$status()
  })
  output$name <- renderPrint({
    imported$name()
  })
  output$data <- renderPrint({
    imported$data()
  })

}

if (interactive())
  shinyApp(ui, server)

datamods documentation built on July 2, 2021, 5:07 p.m.