Как я могу удобно перемещать объекты между сессиями - PullRequest
0 голосов
/ 12 октября 2018

В идеальном рабочем процессе это не то, что можно посоветовать, но иногда это может быть полезно.

Можно ли это сделать легко?

1 Ответ

0 голосов
/ 12 октября 2018

Я сделал следующие функции, он поместит временный файл в вашу домашнюю папку и удалит его, когда он будет выбран по умолчанию:

shoot <- function(..., list = character(), rm = FALSE){
  path <- file.path(path.expand("~"),"temp_object.RData")
  save(..., list =  list, file = path)
  if(rm) rm(list = c(list,as.character(substitute(alist(...))[-1])),
                envir = parent.frame())
  invisible(NULL)
}

loot <- function(rm = TRUE){
  path <- file.path(path.expand("~"),"temp_object.RData")
  if(file.exists(path)){
    load(path,envir = parent.frame())
    if(rm) file.remove(path)
  } else {
    stop("nothing to loot!")
  }
  invisible(NULL)
}

test <- "abcd"
shoot(test)
rm(test)
loot() # in practice from another session
test
# [1] "abcd"

Полезно в моем случае, если в одном сеансе RStudio есть ошибка, и яНевозможно построить, поэтому я могу отправить его другому.

С помощью простого изменения пути по умолчанию можно использовать в сети для простой передачи данных между коллегами, например.

Благодаря@MrFlick для предложений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...