M. Tibbits
M. Tibbits

Reputation: 8640

How can I determine the current directory name in R?

The only solution I've encountered is to use regular expressions and recursively replace the first directory until you get a word with no slashes.

gsub("/\\w*/","/",gsub("/\\w*/","/",getwd()))

Is there anything slightly more elegant? (and more portable?)

Upvotes: 21

Views: 14976

Answers (2)

IRTFM
IRTFM

Reputation: 263372

If you didn't know basename (and I didn't), you could have used this:

tail(strsplit(getwd(), "/")[[1]], 1)

Upvotes: 7

Joshua Ulrich
Joshua Ulrich

Reputation: 176668

Your example code doesn't work for me, but you're probably looking for either basename or dirname:

> getwd()
[1] "C:/cvswork/data"
> basename(getwd())
[1] "data"
> dirname(getwd())
[1] "C:/cvswork"

Upvotes: 45

Related Questions