आर में लापता डेटा के लिए पूरी जानकारी अधिकतम संभावना


19

संदर्भ : कुछ गुम डेटा के साथ पदानुक्रमित प्रतिगमन।

प्रश्न : R में अनुपलब्ध डेटा को संबोधित करने के लिए मैं पूरी जानकारी अधिकतम संभावना (FIML) आकलन का उपयोग कैसे करूँ? क्या कोई पैकेज है जिसे आप सुझाएंगे, और विशिष्ट चरण क्या हैं? ऑनलाइन संसाधन और उदाहरण भी बहुत उपयोगी होंगे।

PS : मैं एक सामाजिक वैज्ञानिक हूं, जिसने हाल ही में आर। मल्टीपल इंप्यूटेशन का उपयोग करना शुरू किया है, लेकिन मुझे वास्तव में पसंद है कि कैसे Mplus जैसे सुरुचिपूर्ण ढंग से प्रोग्राम FIML का उपयोग करके लापता डेटा को संभालता है। दुर्भाग्य से Mplus इस समय पदानुक्रमित प्रतिगमन के संदर्भ में मॉडल की तुलना नहीं करता है (कृपया मुझे बताएं कि क्या आपको ऐसा करने का तरीका पता है!)। मुझे आश्चर्य हुआ कि क्या R में भी कुछ ऐसा ही है? बहुत धन्यवाद!


1
क्या आपने विनबग्स पर विचार किया है ? यह एक सुंदर प्राकृतिक तरीके से लापता डेटा को संभालता है।
माइक डनलवे

WinBUGS का एक विकल्प OpenBUGS या STAN है। ये अधिक मैक फ्रेंडली होने चाहिए।
मैक्सिम.क

जवाबों:


16

इस उत्तर का श्रेय @ जोशुआ को जाता है जिन्होंने इस प्रश्न को Google+ पर R और सांख्यिकी समुदाय को पोस्ट करने पर भयानक उत्तर दिया । मैं बस नीचे उसका जवाब चिपका रहा हूँ।

प्रतिगमन चलाने के लिए (अव्यक्त चर मॉडलिंग के बिना), कृपया उद्धृत पाठ के बाद टाइप किए गए मेरे नोट्स पढ़ें।

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

लवन एमवीएन के लिए एमएल का उपयोग करेगा, लेकिन वर्तमान में मेरा मानना ​​है कि श्रेणीबद्ध डेटा विकल्प सीमित हैं (फिर से एसईएम क्षेत्र से आ रहा है, यह मानक है)। कई प्रतिरूपण पहली बार कम सुरुचिपूर्ण लगते हैं क्योंकि यह FIML के पीछे कई छिपी हुई धारणाओं को स्पष्ट करता है (जैसे कि प्रत्येक चर के लिए वितरण संबंधी धारणाएं और हर चर पर लापता होने के लिए अनुमान लगाया गया मॉडल)। हालाँकि, यह आपको बहुत नियंत्रण देता है और स्पष्ट रूप से प्रत्येक चर के वितरण के बारे में सोचता है, और प्रत्येक के लिए इष्टतम लापता डेटा तंत्र मूल्यवान है।

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

तो यह वास्तव में आपके सवाल का जवाब नहीं देता है, लेकिन इस बात की थोड़ी व्याख्या करता है कि लापता होने से निपटने के लिए पूरी तरह से सामान्य ढांचे क्यों मुश्किल हैं। कोविरियस मैट्रिसेस के लिए मेरे सेमुटिल पैकेज में, मैं एमएल का उपयोग करने के लिए नीचे लावाण का उपयोग करता हूं। मैं ऐसा इसलिए करता हूं क्योंकि मैं एक वैरिएबल कोवरियन मैट्रिक्स के लिए मानता हूं कि आप वैसे भी निरंतर चर का उपयोग कर रहे हैं ताकि मैं यह मान लूं कि मेरे उपयोगकर्ता पहले से ही अपने डेटा के लिए एमवीएन मान रहे हैं।

इसका मतलब यह है कि यदि गायब होने के साथ सभी चर निरंतर हैं, तो लावाँ , एक संरचनात्मक समीकरण मॉडलिंग (एसईएम) पैकेज आर में एफआईएमएल के लिए उपयोग करने के लिए एक अच्छा है।

अब अपने प्रारंभिक प्रश्न पर वापस जा रहा हूं। मेरा इरादा रैखिक प्रतिगमन को चलाने के दौरान लापता होने के लिए एक जादू तय करना था। लापता के साथ मेरे सभी चर अच्छे और निरंतर थे। इसलिए मैं अपने विश्लेषण को दो शैलियों में चलाने के लिए आगे बढ़ा:

  • एकाधिक आवेग के साथ सामान्य तरीका
  • FIML का उपयोग करते हुए lanan के साथ SEM शैली में।

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

तो यह निष्कर्ष प्रतीत होता है कि आर में एफआईएमएल के लिए लावाँ एक सभ्य पैकेज है, फिर भी एफआईएमएल का उपयोग सांख्यिकीय मान्यताओं और विश्लेषण के प्रकार पर निर्भर करता है। जहाँ तक प्रतिगमन (अव्यक्त चर मॉडलिंग के बिना), यह SEM कार्यक्रमों से बाहर रखना और कई प्रतिरूपण का उपयोग करना संभवतः एक बुद्धिमान कदम है।


1

आपके FIML प्रश्न के संबंध में, मुझे लगा कि मैं पॉल एलीसन http://www.statutichorizons.com/wp-content/uploads/MissingDataByML.pdf द्वारा इस अद्भुत एसएएस पेपर को साझा करूंगा

पॉल एलीसन द्वारा की गई टिप्पणियों को देखते हुए, कोई भी आसानी से आर में एक ही प्रक्रिया को लागू कर सकता है lme या nlmer का उपयोग कर।


-3

गुम डेटा / रिकॉर्ड को संभालने के 2 मुख्य तरीके हैं। यू या तो अवलोकन की पूरी पंक्ति को हटा देता है जिसमें एक लापता मान है, या आप इस लापता मान को उत्पन्न करने का एक तरीका ढूंढते हैं। यदि आप पहला तरीका अपनाते हैं, तो आप बहुत सारा डेटा खो सकते हैं। दूसरे दृष्टिकोण में, आपको इस लापता डेटा को उत्पन्न करने के लिए एक "चतुर" तरीका खोजना होगा, इस तरह से कि नए डेटा सेट के पैरामीटर अनुमान, मनाया डेटा सेट के पैरामाटर्स अनुमानों से बहुत अलग नहीं है।

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

आशा है कि यह व्याख्या आपको प्राप्त करने में मदद कर रही है


धन्यवाद। मैं कई प्रतिरूपण के लिए पैकेजों से अवगत हूं, लेकिन यह देखना चाहूंगा कि क्या अधिकतम संभावना अनुमान लगाने के लिए अपेक्षाकृत सरल तरीका है।
सूतिका

जब नमूना, x, अनुपलब्ध है, तो संभावना फ़ंक्शन को परिभाषित नहीं किया गया है। इसलिए मुझे लगता है कि आप किसी ऐसी चीज को खोज रहे होंगे जो मौजूद नहीं है।
लालस २as

2
लापता डेटा का अधिकतम उपयोग करने की व्याख्या के स्पष्टीकरण के लिए इस पेपर को देखें ( एलीसन, 2012 )। ओपी वर्णन क्या मौजूद है।
एंडी डब्ल्यू

2
और यहाँ इसके बारे में एसएएस से कुछ है। support.sas.com/documentation/cdl/en/statug/63347/HTML/default/… मैंने आर में कभी कुछ नहीं देखा है
जेरेमी माइल्स

धन्यवाद @JeremyMiles, मैंने अभी पोस्ट किया है कि इस प्रश्न का उत्तर देने में क्या मदद मिली है, मुझे लगा कि अन्य लोग भी इसे उपयोगी मान सकते हैं। पुनश्च। एंडी फील्ड के साथ आपकी लिखी गई आर किताब कमाल की है !! : डी
सौतिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.