Các tùy chọn trong mô hình hồi quy nguy cơ theo tỷ lệ khi phần dư Schoenfeld không tốt là gì?


15

Tôi đang thực hiện hồi quy tỷ lệ rủi ro Cox trong R bằng cách sử dụng coxph, bao gồm nhiều biến. Phần dư Martingale trông rất tuyệt, và phần dư Schoenfeld là tuyệt vời cho tất cả các biến. Có ba biến số mà phần dư Schoenfeld không bằng phẳng và bản chất của các biến là như vậy có nghĩa là chúng có thể thay đổi theo thời gian.

Đây là những biến tôi không thực sự quan tâm, vì vậy việc biến chúng thành các tầng sẽ ổn. Tuy nhiên, tất cả chúng là các biến liên tục, không phải là biến phân loại. Vì vậy, tôi nhận thấy tầng lớp không phải là một tuyến đường khả thi *. Tôi đã thử xây dựng các tương tác giữa các biến và thời gian, như được mô tả ở đây , nhưng chúng tôi nhận được lỗi:

  In fitter(X, Y, strats, offset, init, control, weights = weights,  :
  Ran out of iterations and did not converge

Tôi đang làm việc với gần 1000 điểm dữ liệu và đang làm việc với nửa tá biến với nhiều yếu tố, vì vậy có cảm giác như chúng ta đang đẩy các giới hạn về cách dữ liệu này có thể được cắt và xắt nhỏ. Thật không may, tất cả các mô hình đơn giản hơn mà tôi đã thử với ít biến được bao gồm rõ ràng là tồi tệ hơn (ví dụ, phần dư Schoenfeld là mảnh vụn cho nhiều biến hơn).

Những lựa chọn của tôi là gì? Vì tôi không quan tâm đến các biến có hành vi kém đặc biệt này, tôi muốn bỏ qua đầu ra của chúng, nhưng tôi nghi ngờ đó không phải là một cách giải thích hợp lệ!

* Một là liên tục, một là số nguyên có phạm vi trên 100 và một là số nguyên có phạm vi 6. Có lẽ là binning?


2
Còn việc sử dụng mô hình Cox mở rộng với tương tác thời gian cho các biến phụ thuộc thời gian thì sao?
kirk

Điều gì về việc xem xét tùy chọn đồng biến thời gian vay (như -tvc- in Stata)?
Carlo Lazzaro

Câu trả lời:


1

Cách thức thanh lịch nhất là sử dụng mô hình sống sót tham số (Gompertz, Weibull, Exponential, ...) nếu bạn có ý tưởng nào đó về mối nguy cơ bản có thể trông như thế nào.

Nếu bạn muốn ở lại với mô hình Cox của mình, bạn có thể sử dụng mô hình cox mở rộng với các hệ số phụ thuộc thời gian . Hãy nhớ rằng cũng có các mô hình cox mở rộng với các đồng biến phụ thuộc thời gian - những điều này không giải quyết được vấn đề của bạn!

Đối với R xem tại đây: http://cran.r-project.org/web/packages/survival/vignettes/timedep.pdf


1

Vài ý tưởng -

1) Hãy thử phương pháp mô hình hóa Royston-Parmar, ví dụ: http://journals.plos.org/plosone/article?id=10.1371/journal.pone.0047804 và các tài liệu tham khảo trong đó. Chúng tôi đã có kết quả hữu ích với nó.

2) Định tâm và chuẩn hóa các biến liên tục có thể hữu ích về mặt số lượng.

3) Trong nhiều mô hình với các yếu tố có nhiều cấp độ, có một vài cấp độ mà về cơ bản không có dữ liệu. Sáp nhập mức để loại bỏ những điều này, nhưng dựa trên các tiêu chí thực chất tốt, có thể rất hữu ích.

Chúc may mắn!


1

Nếu sử dụng tương tác với thời gian cơ bản không hoạt động, bạn có thể thử các chức năng bước (để biết thêm thông tin, hãy xem bản in năm 2016 của Therneau e).

Các hàm bước được phân tầng theo các hệ số cụ thể tại các khoảng thời gian cụ thể. Sau khi thấy phần dư Schoenfeld được vẽ của bạn cho các hiệp phương có vấn đề (nghĩa là plot(cox.zph(model.coxph))), bạn cần kiểm tra trực quan nơi các đường thay đổi góc. Cố gắng tìm một hoặc hai điểm trong đó bản beta có vẻ khác nhau rõ rệt. Giả sử điều này xảy ra vào thời điểm 10 và 20. Vì vậy, chúng ta sẽ tạo dữ liệu sử dụng survSplit()từ survivalgói mà sẽ tạo ra một khung dữ liệu cho các mô hình cụ thể dữ liệu nhóm vào những thời điểm nói trên:

step.data <- survSplit(Surv(t1, t2, event) ~ 
                      x1 + x2,
                      data = data, cut = c(10, 20), episode = "tgroup")

Và sau đó chạy cox.phmô hình với stratachức năng là tương tác với các biến có vấn đề (như khi tương tác với thời gian, không thêm hiệu ứng chính cho thời gian hoặc tầng lớp):

> model.coxph2 <- coxph(Surv(t1, t2, event) ~ 
                          x1 + x2:strata(tgroup), data = step.data)

Và điều đó sẽ giúp.

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.