Я хотел бы понять, как вывод extract
в rstan
упорядочивает апостериорные образцы. Я понимаю, что могу просмотреть апостериорные образцы из каждой цепочки, используя as.array
,
stanfit <- sampling(
model,
data = stan.data)
fitarray <- as.array(stanfit)
Например, fitarray[, 2, 1]
даст мне образцы для второй цепочки первого параметра. Один из способов сохранить апостериорные отсчеты в выводе extract
- просто объединить их. Когда я делаю,
fit <- extract(stanfit)
mean(fitarray[,2,1]) == mean(fit$ss[1001:2000])
для нескольких цепочек и параметров я всегда получаю TRUE
(ss
- первый параметр). Это создает впечатление, что апостериорные выборки объединяются в fit
. Однако когда я это сделаю,
fitarray[,2,1] == fit$ss[1001:2000]
Я получаю FALSE
(подтверждено, что разница не только в точности). Похоже, что fitarray
и fit
по-разному хранят итерации. Как просмотреть итерации (по порядку) каждой цепочки апостериорных выборок отдельно?