Try
options(repos = c(REPO_NAME = "https://packagemanager.rstudio.com/all/latest"))
This will make sure that the latest version of the package is being installed.
Don't want to rely on the user having all of the packages installed?
if(!require("pacman")) install.packages("pacman"); library(pacman) pacman::p_load( ggplot2, tidyr, ... )
Make sure that a package is installed.
if(!library(<package>)){ install.packages("<package>") library(<package>) }
Bored of typing too much? Use snippets.
Go to Tools >> Global options >> Code >> Edit snippets
. In here is a list of
snippets which can be edited to match the use case that you use it most for.
These can come up as auto complete suggestions but if not can be added by typing
the key then Shift + Tab
.
An example
snippet if if($1:condition){ {2:code} }
Typing if
then Shift + Tab
the code in the snippet will be added. Hit Tab
to move between editables.
Don't like printing having a [1] in front of it?
cat("<string>")
``` {r project-setup, eval=FALSE}
devtools::create(path = "./
renv::init()
usethis::use_testthat()
devtools::build(path = "./")
path_to_file = "./Project_0.0.1.tar.gz" install.packages(path_to_file, repos = NULL, type="source")
usethis::use_apache_license() # Or whatever licence you want.
## External dependincies Working within `./R/` **DON'T** use `library(...)` or `require(...)` ``` {r dependincies, eval=F, class.source="bg-danger"} # Within a packaged don't use library(<LIBRARY NAME>) # or require(<LIBRARY NAME>)
Instead update the DESCRIPTION file with an Imports:
section.
``` {r imports, eval=F, class.source="bg-success"}
Imports: ggplot2 (>= 3.3.3)
Adding imports in this way will install with dependencies when the package is installed. If using this as a pretend package that isn't installed fully then adding `library(...)` for the given dependency in the running file should work. ## Roxygen - documentation In a working file use Ctrl + Alt + Shift + R to add a Roxygen documentation template. ``` {r roxygen, eval=F} # With roxygen comments on functions within ./R create a manual devtools::document()
``` {r testthat, eval=F}
usethis::use_testthat()
usethis::use_test() # Adds a test file in ./tests/testthat/test-
devtools::test()
### Covr - test coverage Test coverage. # Renv - library environments ```r # Creating an R environment renv::init() # Taking a snapshot of the current dependencies and store in renv.lock. renv::snapshot() # Load back to the last snapshot renv::restore()
Supper basic just covering the most commonly used commands.
Create a git repo
git init
Add files, commit and push to remote repo (like github or another file store).
git add . git commit -m "<SHORT DESCRIPTION"> -m "<LONGER DESCRIPTION>(optional)" git push <REMOTE NAME> <BRANCH NAME> # example git push origin master
Checkout new branch and add to remote.
git branch <NEW BRANCH NAME>
or
git checkout -b <NEW BRANCH NAME> git push --set-upstream <remote> <branch> # example git push --set-upstream origin master # If branch is already tracked on remote git push
Pull data from remote
git pull <remote> <branch> #example git pull origin master # If on branch git pull
General info
git status
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.