Ошибка в readRDS(file.rds)

Резюме:

Я установил пакет rstan, теперь я столкнулся с этой ошибкой:

Ошибка в readRDS(file.rds): неизвестный входной формат

Описание:

> traceback()
5: readRDS(file.rds)
4: is(obj <- readRDS(file.rds), "stanmodel")
3: stan_model(file, model_name = model_name, model_code = model_code,
stanc_ret = NULL, boost_lib = boost_lib, eigen_lib = eigen_lib,
save_dso = save_dso, verbose = verbose)
2: stan(file = fName, data = datalist, init = list(inlist), chains = 1,
iter = n.it, pars = c("f", "tau"), warmup = n.warm, seed = computerID +
1000) at functions.r#131
1: RunModel(11, myT, nu, lambda, rho, BDRi, Pars, computerID, n.it,
n.warm, getwd())

Окружающая среда:

  • Версия RStan: 2.16.2
  • R Версия 3.4.1 (2017-06-30)
  • Операционная система: Windows 10

person Ali    schedule 26.07.2017    source источник
comment
@JanLauGe Я получаю Error in readRDS(input) : object 'input' not found, если указываю несуществующий объект. Здесь может быть что-то еще.   -  person Roman Luštrik    schedule 26.07.2017
comment
from ?readRDS() --- file : соединение или имя файла, в котором объект R сохраняется или считывается. Вы пытаетесь получить доступ к файлу по имени (в вашем примере, file.rds)? Если это так, вам нужно указать имя файла в кавычках, то есть file.rds, как в моем предыдущем комментарии. Я не думаю, что это как-то связано с rstan   -  person JanLauGe    schedule 26.07.2017
comment
Какую на самом деле команду вы вводите, чтобы получить эту ошибку?   -  person meenaparam    schedule 26.07.2017


Ответы (2)


Пожалуйста, проверьте, работает ли это:

install.packages('rstan')
library(rstan)

saveRDS(mtcars, file = 'test.rds')
readRDS('test.rds')

У меня работает нормально

person JanLauGe    schedule 26.07.2017
comment
Если это был мой ответ, который решил вашу проблему, примите его, нажав на галочку слева. - person JanLauGe; 26.07.2017

Моя проблема решена. Я использую команду writeLines.

library(rstan)
scode <- "
     parameters {
       real y[2]; 
     } 
     model {
       y[1] ~ normal(0, 1);
       y[2] ~ double_exponential(0, 2);
     } 
     "
writeLines(scode, "mymodel.stan")

mymodel <- stan("mymodel.stan", iter = 10, verbose = FALSE) 
person Ali    schedule 29.07.2017