Learn R Programming

RSurvey (version 0.9.3)

EditData: GUI: Data Editor

Description

A graphical user interface (GUI) for viewing and editing table formatted data.

Usage

EditData(d, col.names = names(d), row.names = NULL, col.formats = NULL,
  read.only = FALSE, changelog = NULL, win.title = "Data",
  parent = NULL)

Arguments

d

list, matrix, or data.frame. Data used to populate the data table.

col.names

character. Vector of column names

row.names

character. Vector of row names

col.formats

character. Vector of format conversion specification strings, see sprintf and strftime.

read.only

logical. Specifies whether the data table is in read only mode.

changelog

data.frame. History of all data table edits, see ‘Value’ section.

win.title

character. String to display as the title of the dialog box.

parent

tkwin. GUI parent window

Value

Returns NULL if no edits were made; otherwise, new values of d and changelog are returned as components in a list. The changelog data table contains the following variables:

timestamp

a date-time value that identifies when the edit event occurred.

record

row name

variable

column name

old

value before editing

new

value after editing

Details

Row titles are taken from the row names attribute of argument d. Pattern searches are performed using grep. Edits are reflected in the changelog.

See Also

BuildHistogram

Examples

Run this code
# NOT RUN {
  tcltk::tclRequire("Tktable", warn = TRUE)

  n <- 1000L
  V1 <- sample(c(1:9, NA), n, replace = TRUE)
  V2 <- sample(LETTERS, n, replace = TRUE)
  V3 <- as.POSIXct(rnorm(n, mean = 0, sd = 1e6), origin = "2010-01-01")
  V4 <- sample(V1 * pi, n)
  d <- data.frame(V1, V2, V3, V4)
  col.names <- c("Integers", "Letters", "DateTime", "Numeric")
  col.formats <- c("%d", "%s", "%m/%d/%Y %H:%M", "")
  obj <- EditData(d, col.names, col.formats)
  str(obj)

  rownames(d) <- paste0(sample(LETTERS, n, replace = TRUE), seq_len(n))
  EditData(d, read.only = TRUE)

  colnames(d) <- NULL
  rownames(d) <- NULL
  EditData(d, read.only = TRUE)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab