नकारात्मक द्विपद जीएलएम से "गैर-पूर्णांक" चेतावनी से कैसे निपटें?


11

मैं एक नकारात्मक द्विपद मॉडल का उपयोग करके आर में एक मेजबान को प्रभावित करने वाले परजीवियों की औसत तीव्रता को मॉडल करने की कोशिश कर रहा हूं। मैं कहता हूं कि मुझे 50 या अधिक चेतावनी मिलती रहे:

In dpois(y, mu, log = TRUE) : non-integer x = 251.529000

मैं इससे कैसे निपट सकता हूं? मेरा कोड इस तरह दिखता है:

mst.nb = glm.nb(Larvae+Nymphs+Adults~B.type+Month+Season, data=MI.df)

1
कृपया लोगों के साथ काम करने के लिए एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण जोड़ें ।
गूँज - मोनिका

5
एक नकारात्मक द्विपद जीएलआईएम एक प्रकार का गणना मॉडल है। प्रतिक्रिया को मायने रखता है। एक गिनती , परिभाषा के अनुसार, एक भिन्नात्मक मूल्य नहीं हो सकता है। क्या आपके पास ऐसे मूल्य हैं?
गूँज - मोनिका

1
क्या आप स्पष्ट कर सकते हैं कि "तीव्रता" से आपका क्या मतलब है? क्या आप एक परजीवी की गिनती को विभाजित कर रहे हैं, कहते हैं, एक मेजबान के लिए सतह क्षेत्र की एक राशि?
गंग - मोनिका

1
मेरे पास गणना डेटा है, हालांकि मुझे विभिन्न नमूनों के प्रयासों के लिए तीव्रता की गणना करनी थी। मैं समझता हूं कि मुझे वहां गणना डेटा की आवश्यकता है, हालांकि मैं सिर्फ सोच रहा था कि क्या एक ही मॉडल का उपयोग करके गैर-पूर्णांक संख्याओं के साथ काम करने का एक और तरीका था। तीव्रता के लिए मैंने संक्रमित मेजबान की संख्या के साथ परजीवियों की गिनती को विभाजित किया।
नताशा

2
@ नताशा, ऐसा मत करो। यह बहुत अधिक संभावना है कि इस समस्या को संभालने का सही तरीका गंग के जवाब के अनुसार एक ऑफसेट के साथ है। यदि आप निश्चित होना चाहते हैं, तो अपने प्रश्न को थोड़ा और स्पष्ट करने के लिए संपादित करें कि अंतर नमूना तीव्रता कहां से आती है। क्या ये अलग-अलग संख्या में मेजबान हैं? अलग-अलग लंबाई के नमूने, या संग्राहकों की संख्या?
बेन बोल्कर

जवाबों:


9

ऋणात्मक द्विपद गणना डेटा के लिए एक वितरण है, इसलिए आप वास्तव में चाहते हैं कि आपका प्रतिक्रिया चर मायने रखता है (यानी, गैर-ऋणात्मक संख्या)। उस ने कहा, "अलग-अलग सैंपलिंग प्रयासों" का हिसाब रखना उचित है (मुझे नहीं पता कि आप इसका क्या जिक्र कर रहे हैं, लेकिन मुझे इसका पता चल गया है)। हालाँकि, आपको ऐसा करने की कोशिश नहीं करनी चाहिए कि आप अपनी संख्या को किसी अन्य संख्या से विभाजित करें। इसके बजाय, आपको ऑफसेट के रूप में उस दूसरी संख्या का उपयोग करने की आवश्यकता है । एक ऑफसेट की सीवी पर एक अच्छी चर्चा है: पॉसन प्रतिगमन में ऑफसेट का उपयोग कब करें? मेरा अनुमान है कि आपका मॉडल कुछ इस तरह होना चाहिए:

mst.nb = glm.nb(Larvae+Nymphs+Adults~B.type+Month+Season + offset(log(num.hosts)), 
                data=MI.df)

धन्यवाद। मैं यह कोशिश करूंगा और आपको बताऊंगा कि मैंने क्या किया।
नताशा

OT: मुझे कुछ याद आ रहा है, एक प्रतिगमन में कई परिणाम होने का क्या मतलब है ??
बकाबुर्ग

@ बाबाबुर्ग, मैं नहीं बता सकता कि आप किस बात का जिक्र कर रहे हैं।
गंग -

कोड में "लार्वा + निम्फ्स + वयस्क ~" भाग।
बकाबुर्ग

1
@ बाकाबर्ग, यह इस बारे में है कि आर कैसे काम करता है। जोड़ तत्व है। 3 वैक्टर जोड़ने से आपको एक एकल वेक्टर मिलता है जहां प्रत्येक तत्व 3 संगत तत्वों का योग है। आर फार्मूले के एलएचएस पर कई प्रतिक्रिया चर हैं, आपको उपयोग करने की आवश्यकता है cbind()
गूँग - मोनिका

4

यह एक चेतावनी है, एक घातक त्रुटि नहीं। glm.nb () आपके परिणाम चर के रूप में मायने रखता है, जो पूर्णांक हैं। आपका डेटा पूर्णांक नहीं है: 251.529।

आर कह रहा है "हम्म् ... आप इसे जांचना और सुनिश्चित कर सकते हैं कि यह ठीक है, क्योंकि यह होना ठीक नहीं लग सकता है।" यदि मेरी मेमोरी सही है, तो SPSS ऐसी चेतावनी नहीं देता है।

यदि आपको लगता है कि आप सही मॉडल का उपयोग कर रहे हैं, भले ही आपके पास पूर्णांक न हों, तो इसे अनदेखा करें और चलते रहें।


1
मुझे पता है कि यह एक चेतावनी है, मैं सोच रहा था कि क्या इसके आसपास कोई रास्ता है। मेरे पास पूर्णांक हैं, हालांकि मैं यह देखने की कोशिश कर रहा था कि क्या पूर्णांकों के साथ काम करने का एक तरीका है, लेकिन एक ही मॉडल का उपयोग अलग कोड के साथ।
नताशा

1
यहां दी गई चेतावनियों को कैसे
दबाएं

-2

Im एक पारिस्थितिक पारिजातविज्ञानी .. जिस तरह से आपको इसे संभालना चाहिए वह उन मेजबान को सीबाइंड करके है जो परजीवी थे और जो नहीं थे, और फिर एक द्विपद वितरण का उपयोग करते हुए .. नीचे दिए गए कोड को देखें।

मैंने कभी भी एक gl w / एक से अधिक y वैरिएबल का उपयोग नहीं किया है .. तो इससे आप कह सकते हैं कि आप पैरासिटाइज़्ड लार्वा को देखना चाहते हैं: आपके पास ऐसे # लार्वा होंगे जो स्वस्थ थे, और # जो परजीवी थे।

कहते हैं: Lh और Lp

इसलिए उदाहरण के लिए

parasitizedL = cbind (Lp, Lh) hist (parasitized) # मैं अनुमान लगा रहा हूँ कि आप सिर्फ एक नियमित द्विपद वितरण w / glm का उपयोग कर सकते हैं .. और इसे नकारात्मक की आवश्यकता नहीं हो सकती है। परिवार = द्विपद, डेटा = MI.df)

फिर चरणबद्ध मॉडल में कमी करके देखें कि आपके कौन से कारक परजीवीवाद को काफी प्रभावित करते हैं ... नीचे दिए गए लिंक पर देखें

http://bbolker.github.io/mixedmodels-misc/glmmFAQ.html

हालाँकि, ऐसा लगता है कि आपको पुनरावृत्ति के नमूने के लिए यादृच्छिक प्रभाव पड़ने की आवश्यकता है .. इसलिए संभावना है कि आपका यादृच्छिक प्रभाव होगा (1 सीजन / महीना) ... लेकिन अपने डेटा को जानना w / o बताना कठिन है

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