This cheatsheet covers how to control and troubleshoot the working directory in R, RStudio Desktop, and RStudio Cloud. A correct working directory makes data import, script sourcing, and project management much smoother.
Instead of just:
rstudio .Use:
rstudio --cwd /path/to/your/directoryExample:
rstudio --cwd /c/workspace/My_Projects/alarm-projectsThis ensures RStudio starts in the specified directory.
Update: better to use Rproj since we uses relative dir instead of specific path.
- Menu:
Session→Set Working Directory→Choose Directory... - Shortcut: Ctrl + Shift + H
- R Console Command:
setwd("C:/workspace/My_Projects/alarm-projects")
- Go to
Tools→Global Options→General - Under Default working directory, set your path (e.g.,
C:/workspace/My_Projects/alarm-projects) - Click Apply and restart RStudio
RStudio Projects automatically set the working directory to the project folder.
File→New Project→Existing Directory- Select your folder (e.g.,
C:/workspace/My_Projects/alarm-projects) - RStudio creates a
.Rprojfile—always open this file to launch the project with the right directory!
- RStudio Cloud always starts in the project’s root directory.
- For reproducibility, always use RStudio Projects in the cloud too.
- To check your current directory:
getwd()
- To change it:
setwd("/cloud/project/subfolder") - Upload files to
/cloud/projectfor easy access.
- Check current directory:
getwd()
- Set working directory:
setwd("/path/to/your/directory")
- Paths on Windows: use either
/or double backslashes\\(never single\). - Always check your current directory with
getwd()if file loading fails. - Use Projects whenever possible—they save a ton of headaches!
Pro Tip:
Always use RStudio Projects for each analysis or codebase. They save window layouts, history, and—most importantly—set your working directory automatically!
Last updated: 2025-06-26
Project-based Package Installation in R: single or bundle
Using
install.packages()will globally install the packages and not project specific! Here’s a clear explanation of what’s happening and how to ensure your renv setup and GitHub repository are truly the “Source of Truth” for your R project environment.Why is renv::snapshot() not updating the lockfile?
The Issue:
How to Fix It
1. Always Install Packages Into the renv Project Library
Preferred Approach:
Example:
Bulk Install From requirements.txt:
If you want to install from a list (like requirements.txt), do:
2. Rerun renv::snapshot()
3. Commit renv.lock and renv/ to GitHub
git add renv.lock da-with-r.Rproj git commit -m "Update project environment and lockfile" git push4. Best Practices: Making GitHub the Source of Truth
What to Do Now (Step by Step):
Summary Table