The goal of rvisidata is to combine the power of Visidata, "A Swiss Army Chainsaw for Data", with R
.
VisiData is an interactive multitool for tabular data. It combines the clarity of a spreadsheet, the efficiency of the terminal, and the power of Python, into a lightweight utility which can handle millions of rows with ease.
You need to have Visidata installed. Please follow the official installation instructions provided here.
To verify visidata is installed correctly, vd --version
should print out the installed version.
rvisidata is available on CRAN.
install.packages("rvisidata")
vd(iris)
This package supports integration with tmux
.
The default behavior is to open vd
in a vertical pane above the current pane, if R is running in a tmux
session.
To disable this, set:
options(rvisidata.tmux = FALSE)
To customize the way tmux
sets up this workspace (For example, opening vd
in a new window rather than pane), you
may supply your own shell script that invokes vd
on your dataset.
Set:
options(rvisidata.tmux = "path/to/your/script")
Your script should take one argument, the filename to be opened.
For example, the following will open your dataframe in a vertical split above the R console window, and return focus back to R:
#!/bin/bash
filename=$1
tmux split-window -vb -p 70 "vd $filename" \; \
select-pane -l
Internally, rvisidata
writes the data frame as a csv
file to a temporary folder and then loads it with visidata
. Be therefore careful with very large data frames, because the writing process can take a while. It will delete the temporary file after the visidata
session is closed.
I do not claim that this implementation is efficient or elegant. But it works. Suggestions for making it faster are very welcome.
This tool opens the data frame and discards any changes you make for two reasons: (1) you should do your data manipulation in R
to have a reproducible analysis workflow and (2) it is easier to implement this way 😇.
Visidata is designed and developed by Saul Pwanson (official GitHub repository).