2015-02-16 30 views
8

Gói muhaz ước tính hazard function từ right censored dữ liệu sử dụng phương pháp làm mịn hạt nhân. Câu hỏi của tôi là, có cách nào để nhận khoảng tin cậy cho chức năng nguy hiểm mà muhaz tính toán không?Khoảng tin cậy của chức năng nguy hiểm gói muhaz

options(scipen=999) 
library(muhaz) 
data(ovarian, package="survival") 
attach(ovarian) 
fit1 <- muhaz(futime, fustat) 
plot(fit1, lwd=3, ylim=c(0,0.002)) 

muhaz hazard function

Trong ví dụ trên các muhaz.objectfit có một số mục fit1$msemin, fit1$var.min, fit1$haz.est tuy nhiên chiều dài của họ là một nửa của fit1$haz.est.

Bất kỳ ý tưởng nào nếu có thể trích xuất khoảng tin cậy cho chức năng nguy hiểm?

EDIT: Tôi đã thử các sau đây dựa với những gì @ user20650 gợi ý

options(scipen=999) 
library(muhaz) 
data(ovarian, package="survival") 
fit1 <- muhaz(ovarian$futime, ovarian$fustat,min.time=0, max.time=744) 


h.df<-data.frame(est=fit1$est.grid, h.orig=fit1$haz.est) 

for (i in 1:10000){ 
d.s.onarian<-ovarian[sample(1:nrow(ovarian), nrow(ovarian), replace = T),] 
d.s.muhaz<-muhaz(d.s.onarian$futime, d.s.onarian$fustat, min.time=0, max.time=744) 
h.df<-cbind(h.df, d.s.muhaz$haz.est) 
} 


h.df$upper.ci<-apply(h.df[,c(-1,-2)], 1, FUN=function(x) quantile(x, probs = 0.975)) 
h.df$lower.ci<-apply(h.df[,c(-1,-2)], 1, FUN=function(x) quantile(x, probs = 0.025)) 
plot(h.df$est, h.df$h.orig, type="l", ylim=c(0,0.003), lwd=3) 
lines(h.df$est, h.df$upper.ci, lty=3, lwd=3) 
lines(h.df$est, h.df$lower.ci, lty=3, lwd=3) 

Thiết max.time dường như tác phẩm, mỗi mẫu hast bootstrap các điểm lưới dự toán bằng cùng. Tuy nhiên, CI thu được, có ý nghĩa rất ít. Thông thường tôi mong rằng các khoảng thời gian thu hẹp tại t = 0 và rộng hơn theo thời gian (ít thông tin hơn, không chắc chắn hơn) nhưng các khoảng thời gian thu được dường như ít nhiều liên tục theo thời gian.

enter image description here

+2

Bạn có thể khởi động không ?. Chữ này với (fit1, plot (est.grid, haz.est, type = "l", lwd = 3, ylim = c (0,0.002))) 'cho cùng cốt truyện, vì vậy bạn sẽ cần ước lượng' haz .est' tại cùng một timepoints như cho 'fit1'. Tuy nhiên, khi bạn resample và refit 'muhaz' mô hình các timepoints thay đổi, Từ một thử nhanh, tôi nghĩ rằng bạn có thể buộc' est.grid' được ở cùng một timepoints cho mỗi resample nếu bạn đặt 'min.time' và 'max.time' giống như trong trường hợp ban đầu. tức là 'với (dat, muhaz (futime, fustat, min.time = 0, max.time = 744))', trong đó 'dat' là dữ liệu bootstrap. – user20650

+0

Đặt giá thầu CPCthời gian dường như hoạt động, mọi mẫu bootstrap đều có cùng các điểm lưới. Tuy nhiên, CI thu được, có ý nghĩa rất ít. Thông thường tôi mong rằng khoảng thời gian sẽ rộng hơn theo thời gian (ít thông tin hơn, không chắc chắn hơn) nhưng khoảng thời gian thu được dường như ít nhiều liên tục theo thời gian. – ECII

Trả lời

1

Bootstrapping cung cấp câu trả lời như commenter đề nghị. Trực giác của bạn là đúng mà bạn nên mong đợi các TCTD mở rộng khi số lượng rủi ro giảm. Tuy nhiên, hiệu ứng này sẽ bị giảm đi bởi quá trình làm mịn và khoảng thời gian dài hơn mà việc làm mịn được áp dụng, bạn sẽ thấy sự thay đổi về kích thước của CI. Hãy thử làm mịn trong khoảng thời gian đủ ngắn và bạn nên để ý các CIs mở rộng đáng chú ý hơn.

Như bạn có thể thấy, các ô nguy hiểm được làm nhẵn này có thể sử dụng rất hạn chế và rất nhạy cảm với cách làm mịn. Như là một bài tập, nó là hướng dẫn để mô phỏng thời gian sống sót từ một loạt các phân phối Weibull w/tham số hình dạng thiết lập để 0.8, 1.0, 1.2, và sau đó nhìn vào các lô nguy hiểm mịn và cố gắng phân loại chúng. Trong phạm vi các ô này mang tính thông tin, sẽ khá dễ dàng để nói sự khác biệt giữa ba đường cong đó dựa trên tỷ lệ xu hướng của hàm nguy hiểm. YMMV, nhưng tôi đã không được rất ấn tượng với kết quả khi tôi đã làm bài kiểm tra này với kích thước mẫu hợp lý phù hợp với các thử nghiệm lâm sàng trong ung thư học.

Để thay thế cho các ô nguy hiểm được làm nhẵn, bạn có thể thử lắp các đường cong lũy ​​thừa theo phương pháp của Han et al. (http://www.ncbi.nlm.nih.gov/pubmed/23900779) và khởi động điều đó. Thuật toán của họ sẽ xác định các điểm phá vỡ mà tại đó có sự thay đổi đáng kể về mặt thống kê trong tỷ lệ nguy cơ và có thể cho bạn hiểu rõ hơn về xu hướng trong tỷ lệ nguy hiểm so với các lô nguy hiểm được làm mịn. Nó cũng sẽ tránh sự lựa chọn phần nào tùy ý nhưng do hậu quả của các tham số làm mịn.

+0

Cảm ơn câu trả lời phức tạp của bạn. Bạn có biết nếu có một gói R cho thủ tục đó không? – ECII

+0

Tôi không tin rằng họ đã xuất bản mã R của họ. Bạn có thể lấy mã từ các tác giả nếu bạn giải thích cách bạn sẽ sử dụng nó và yêu cầu độc đáo. Ngoài ra, giấy của họ nên giải thích phương pháp đủ tốt để biến nó trở thành một dự án thú vị. – jrdnmdhl

Các vấn đề liên quan