समय-निर्भर चर के साथ आवर्ती घटना डेटा के लिए डेटा और फ़ंक्शन कॉल की संरचना


9

मैं एक रोगी के गिरने की संभावना पर 2 दवाओं ( drug1, drug2) के प्रभाव का अनुमान लगाने का प्रयास कर रहा हूं event। रोगी एक से अधिक बार गिर सकते हैं और किसी भी बिंदु पर दवाओं को डाल या उतार सकते हैं।

मेरा प्रश्न है कि डेटा को समय अवधि (दिनों) के संबंध में कैसे संरचित किया जाना चाहिए, विशेष रूप से यह कि क्या दिनों के बीच ओवरलैप होने की आवश्यकता है। दो कारण हैं कि मुझे लगता है कि मेरा ढांचा गलत है, पहला गलत प्रतीत होता है N। मैं भी कुछ त्रुटियाँ हो रही है जहां समय अवधि के एक ही दिन (यानी है time1=4, time2=4) और अनिश्चित इन कैसे कोडित किया जाना चाहिए हूँ। क्या बाद की प्रविष्टियों का प्रारंभ समय पिछली प्रविष्टि का रोक समय होना चाहिए? मैंने इसे दोनों तरीकों से आज़माया है (ओवरलैप के साथ और बिना), और ओवरलैप होने पर चेतावनी से छुटकारा पा लेता है, Nयह अभी भी गलत है।

Warning message:
In Surv(time = c(0, 2, 7, 15, 20, 0, 18, 27, 32, 35, 39, 46, 53,  :
  Stop time must be > start time, NA created

अभी मेरे पास डेटा सेट अप है जहां अगले दिन की शुरुआत होती है। विशिष्ट रोगियों की पहचान उनके द्वारा की जाती है chart numbers

Time1    Time2    Drug1    Drug2   Event    ChartNo
    0        2        1        0       0        123
    3       10        1        1       1        123
   11       14        1        1       1        123
    0       11        0        1       0        345
    0       19        1        0       1        678
    0        4        0        1       0        900
    5       18        1        1       0        900

रोगी 123 दिन 2 की शुरुआत में दवा 1 पर था, जिसके बाद उन्होंने दवा 2 जोड़ा था। वे पहली बार गिरने से पहले दोनों दवाओं पर दिन 3 से दिन 10 तक गए, फिर 14 वें दिन दूसरी बार गिर गए, जबकि दोनों दवाओं पर। रोगी 345 दवा के 2 दिनों में गिरने के बिना 11 दिन चला गया (फिर सेंसर किया गया), आदि।

वास्तविक अनुमान इस तरह दिखता है:

S <- Srv(time=time1, time2=time2, event=event)
cox.rms <- cph(S ~ Drug1 + Drug2 + cluster(ChartNo), surv=T)

मेरी मुख्य चिंता यह है कि nमेरे विश्लेषण के लिए सूचित किया जाना चाहिए 2017(डेटा में पंक्तियों की संख्या), जब वास्तविकता में मेरे पास केवल 314अद्वितीय रोगी हैं। अगर यह सामान्य है या रास्ते में मेरे द्वारा की गई कुछ त्रुटि का परिणाम है तो मैं अनिश्चित हूं।

> cox.rms$n
Status
No Event    Event 
    1884      133 

coxph()उत्तरजीविता पैकेज से उपयोग करते समय भी यही सच है ।

 n= 2017, number of events= 133

हालांकि घटनाओं की संख्या सही है।

ऐसा लगता है कि इस पोस्ट ने इसे 'ओवरलैप' के साथ सेट किया है, जिसका मैंने वर्णन किया है, लेकिन मैं इसके बारे में अनिश्चित हूं N, और वे इसके बारे में नहीं समझते हैं ID


+cluster(ChartNo)अवधि दोहराया टिप्पणियों चिंता का ध्यान रखना चाहिए। एक वैकल्पिक दृष्टिकोण + (1|subject)एक कॉक्समे :: कॉक्समे विश्लेषण में जोड़ना होगा ।
डीडविन

जवाबों:


1

आपका डेटा फ़ॉर्मेटिंग सही है।

बार-बार होने वाले सहसंयोजक होने के कारण आवर्तक घटनाओं और दवा की अतिरिक्त जटिलता के कारण आपके पास प्रति रोगी कई रिकॉर्ड हैं। आपके द्वारा उपयोग किया गया आउटपुट headइन डेटा को समझने में मददगार है।

आवर्तक घटनाओं के विश्लेषण के साथ-साथ समय के साथ-साथ अलग-अलग सहसंयोजकों के लिए विशिष्ट दृष्टिकोण, डेटा को "लंबे" प्रारूप में होने के लिए प्रारूपित कर रहा है जहां प्रत्येक पंक्ति जोखिम-सहसंयोजक टिप्पणियों के अंतराल का प्रतिनिधित्व करती है। उदाहरण के लिए, हम देखते हैं कि मरीज 123 केवल ड्रग 1 पर 0 से समय 2 तक है, फिर ड्रग 1 और ड्रग 2 दोनों समय से लेने के लिए बदलता है। उस समय, उन्हें गिरावट का अनुभव नहीं हुआ था, इसलिए 0-2 से उनका अवलोकन उस बिंदु पर सेंसर किया गया है क्योंकि हम नहीं जानते कि अगर वे ड्रग 1 को अकेले लेना जारी रखते हैं तो उनका पतन कितना लंबा होगा। समय 3 पर उन्हें कॉहोर्ट में दोबारा भर्ती कराया गया, एक मरीज के रूप में दोनों ड्रग्स को 7 टाइम-यूनिट्स के लिए लिया गया जिसके बाद उन्हें पहली बार गिरावट का अनुभव हुआ। वे केवल 4 समय-इकाइयों के बाद एक ही ड्रग संयोजन पर दूसरी गिरावट का अनुभव करते हैं।

रिकॉर्ड की संख्या कोहोर्ट डेटा का एक उपयोगी सारांश नहीं है। यह आश्चर्य की बात नहीं है कि पंक्तियों की संख्या रोगियों की संख्या से कहीं अधिक बड़ी है। इसके बजाय, स्टार्ट-टू-स्टॉप से ​​समय को योग करें और इसे व्यक्ति-समय-जोखिम के रूप में रिकॉर्ड करें। घटना को समझने के लिए कोहोर्ट-डोनोमिनेटर उपयोगी है। यह रोगियों की कच्ची संख्या को संक्षेप में प्रस्तुत करने के लिए भी उपयोगी है, लेकिन ध्यान रखें कि डेटा "लंबे" प्रारूप में है ताकि आपके डेटासेट में पंक्तियों की संख्या से कम हो।

त्रुटि के लिए, मुझे लगता है कि आपको "रोक" तिथि में 1 इकाई जोड़ने की आवश्यकता हो सकती है। यदि मरीज 123 दिन 0, 1, और 2 के लिए दवा 1 लेता है और फिर दिन 3 पर दवा 2 शुरू करता है, तो उन्होंने दवा 1 पर गिरने के लिए 3 दिन जोखिम का अनुभव किया। हालांकि, 2-0 = 2 और यह सही नहीं है भाजक।

"क्लस्टर" तर्क क्या करता है (आम तौर पर) एक क्रूरता है, जो कि एक प्रकार का यादृच्छिक अवरोधन है जो कई अनमोक जोखिम वाले कारकों के कारण आनुपातिक जोखिम अंतर हो सकता है। मैं अक्सर धोखाधड़ी के साथ विश्लेषण नहीं करता हूं। आप "क्लस्टर" कमांड को छोड़ सकते हैं और परिणामों को घटना अनुपात के रूप में व्याख्या कर सकते हैं। आप वैकल्पिक रूप से कॉक्स मॉडल को उस समय तक फिट कर सकते हैं जब तक कि सभी रोगियों में पहली गिरावट न हो और जोखिम अनुपात को जोखिम अनुपात के रूप में व्याख्या करें। मुझे लगता है कि इन दोनों के बीच धोखाधड़ी का परिणाम कहीं गिरना चाहिए, और मैं कभी स्पष्ट नहीं कर पाया कि व्याख्या क्या होनी चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.