Làm cách nào tôi có thể tạo một âm mưu tương tự như cốt truyện được tạo ra bởi plot.bugs và plot.jags từ mcmc.list? [đóng cửa]


9

R dường như có thể xuất ra các sơ đồ tóm tắt đẹp từ bugsjagscác đối tượng được tạo bởi các hàm R2WinBUGS :: bugR2jags: jags .

Tuy nhiên, tôi đang sử dụng rjagsgói. Khi tôi cố gắng vẽ kết quả của hàm rjags::coda.samplesbằng R2WinBUGS::plot.mcmc.listcác kết quả là các ô chẩn đoán (mật độ tham số, chuỗi thời gian chuỗi, tự động tương quan) cho từng tham số.

Dưới đây là loại cốt truyện mà tôi muốn sản xuất, từ hướng dẫn "Chạy WinBuugs và OpenBugs từ R" của Andrew Gelman . Chúng được sản xuất bằng cách sử dụng plot.pugs.

Vấn đề là plot.bugslấy một bugsđối tượng làm đối số, trong khi plot.mcmc.listlấy đầu ra của coda.samples.

Đây là một ví dụ (từ coda.samples):

 library(rjags)
 data(LINE)
 LINE$recompile()
 LINE.out <- coda.samples(LINE, c("alpha","beta","sigma"), n.iter=1000)
 plot(LINE.out)

Cái tôi cần là

  • một cách để tạo ra một cốt truyện tóm tắt tương tự, giàu thông tin, tương tự như một trang được tạo bởi plot.bugs
  • một chức năng sẽ chuyển đổi LINE.outthành một đối tượng lỗi hoặc

nhập mô tả hình ảnh ở đây

Câu trả lời:


2

Vì không có câu trả lời, ít nhất tôi sẽ đăng những gì tôi đã nhận được cho đến nay:

Các as.bugs.arraychức năng trong R2WinBUGSgói đã được tạo ra cho mục đích này. Theo tài liệu ( ?as.bugs.array):

Chức năng chuyển đổi kết quả từ mô phỏng chuỗi Markov, có thể không phải từ BUGS, sang đối tượng lỗi. Được sử dụng chủ yếu để hiển thị kết quả với plot.bugs.

Vì vậy, có thể có được một âm mưu LINE.outtrong ví dụ của bạn, mặc dù nó không vẽ các biến chính xác:

plot(as.bugs.array(sims.array = as.array(LINE.out)))        

Sẽ mất thêm một chút công việc để xác định cách chính xác để chuyển đổi LINE.outLINE.samplesđối tượng từ đó example(jags.samples)có thể là một nơi dễ dàng hơn để bắt đầu.


0

Những điều sau đây có vẻ hiệu quả với tôi:

require(R2jags)
m <-jags(data=d,inits=i,pars,n.iter=1000,n.chains=3,model.file="foo.txt",DIC=F)
m <- autojags(m)
plot(m)

Đây là một ví dụ tái sản xuất:

example(jags)
plot(jagsfit)

1
Đó là một manh mối hữu ích, nhưng không giải quyết được vấn đề bắt đầu bằng một mcmc.list(theo như tôi có thể nói).
David LeBauer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.