--- title: "package editData : An RStudio Addin for Editing A 'data.frame'" author: "Keon-Woong Moon" date: "`r Sys.Date()`" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{package editData : An RStudio Addin for Editing A 'data.frame'} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE,comment =NA,fig.align='center',out.width="70%") ``` # editData The 'editData' is an RStudio addin for editing a 'data.frame' or a 'tibble'. Many RStudio users want to edit a data.frame. With this 'editData' package, you can delete, add or update a 'data.frame' without coding. You don't have to use Microsoft excel or a csv editor any more to edit data. You can get resultant data as a 'tibble' or as a 'data.frame'. You can read a csv file in the disk and save it as a csv format. ## Install package You can install `editData` package from CRAN. ```{r,eval=FALSE} install.packages("editData") ``` You can install the developmental version of `editData` package from github. ```{r,eval=FALSE} #install.packages("devtools") devtools::install_github("cardiomoon/editData") ``` After install this `editData` package you can see the `editData` addin in RStudio's addins. (See the second plot). ## Usage: As an RStudio Add-in This addin can be used to interactively manipulate a `data.frame` or a `tibble`. The intended way to use this is as follows: 1. Highlight a symbol naming a `data.frame` or a `tibble` in your R session, e.g. `mtcars`(1). ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/1.png") ``` 2. Execute this addin(arrow), to interactively manipulate it. ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/2.png") ``` 3. You can select and unselect a row by clicking a row in dataTable. You can delete the selected row(1), add a new row(2) or edit a row(3). ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/3.png") ``` You can enter data name(4) to edit, upload a CSV or excel or RDS file(5) and download the edited data as a csv(6) or xlsx(7) or RDS (8)file. 4. If you press the edit button you can see this window. You can edit individual cell. You can delete the row or update the data. ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/4.png") ``` 5. Alternatively, you can edit a cell by double-click. ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/7.png") ``` 6 By default, the `sampleData` included in the `editData` package is selected. The `sex` and `bloodType` column are `factor` variables. A `selectInput` is assigned for a column of class factor. ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/5.png") ``` 7. A `dateInput` is assigned for a column of class `date`. ```{r,echo=FALSE} knitr::include_graphics("https://raw.githubusercontent.com/cardiomoon/editData/master/man/figures/6.png") ``` ## Usage: As a regular function You can use the `editData()` function as a regular function, e.g. in a command line. ```{r,eval=FALSE} require(editData) result <- editData(mtcars) ``` The resultant 'tibble' or 'data.frame' is assigned to the object `result`. ## Usage: As a shiny module The `editData` package is made of modularized shiny functions. You can use the modularized `editableDTUI()` and `editableDT()` functions in your shiny app. In this package, I have included three examples in the `inst` folder. You can run these examples with one of the following codes. ```{r,eval=FALSE} shiny::runApp(system.file('example',package='editData')) shiny::runApp(system.file('multipleData',package='editData')) shiny::runApp(system.file('multipleFiles',package='editData')) ```