मेरे पास एक प्रतिगमन मॉडल है जो इस तरह दिखता है:
... या आर संकेतन में: y ~ x1 + x2 + x3 + x1:x2 + x1:x3 + x1:x2:x3
मान लें कि और श्रेणीबद्ध चर हैं और संख्यात्मक है। जटिलता यह है कि में तीन स्तर और मानक विरोधाभासों के बजाय, मुझे परीक्षण करने की आवश्यकता है:
- क्या स्तर लिए अवरोधन औसत अंतर से स्तर और के स्तर के लिए भिन्न होता है ।
- क्या की प्रतिक्रिया स्तर और स्तरों के औसत और ।
- क्या का ढलान के स्तर और के स्तर और स्तर के बीच काफी भिन्न है ।
इस पोस्ट के आधार पर ऐसा लगता है कि मुझे जो मैट्रिक्स चाहिए वो है ...
2
-1
-1
तो मैं करता हूं contrasts(mydata$x1)<-t(ginv(cbind(2,-1,-1)))
। का अनुमान बदल जाता है, लेकिन ऐसा अन्य लोग करते हैं। मैं उन स्तरों पर के मान से दोगुने से और समूह साधन (जब और अपने संदर्भ स्तर पर हो) के अनुमानित मानों को घटाकर के नए अनुमान को पुन: उत्पन्न कर सकता हूं । लेकिन मैं इस बात पर भरोसा नहीं कर सकता कि मैंने अपने कंट्रास्ट मैट्रिक्स को सही ढंग से निर्दिष्ट किया है जब तक कि मैं इसी तरह अन्य गुणांक भी प्राप्त नहीं कर सकता।
किसी को भी सेल साधन और विरोधाभासों के बीच संबंध के आसपास मेरे सिर को लपेटने के लिए कोई सलाह है? धन्यवाद। क्या इस प्रकार के कंट्रास्ट के लिए एक मानक नाम है?
अहा! Glen_b के उत्तर में पोस्ट किए गए लिंक के अनुसार , नीचे की रेखा है, आप समूह की किसी भी तरह की तुलना का मतलब यह कर सकते हैं कि आप आर-स्टाइल कंट्रास्ट विशेषता में निम्नानुसार हैं:
- एक चौकोर मैट्रिक्स बनाएं। पंक्तियाँ आपके कारक के स्तरों का प्रतिनिधित्व करती हैं और कॉलम विरोधाभासों का प्रतिनिधित्व करते हैं। पहले वाले को छोड़कर, जो मॉडल को बताता है कि अवरोधन का क्या प्रतिनिधित्व करना चाहिए।
- यदि आप चाहते हैं कि आपका अवरोधन भव्य माध्य हो, तो सभी कॉलम को समान गैर-शून्य मान के साथ भरें, इससे कोई फर्क नहीं पड़ता। यदि आप चाहते हैं कि अवरोधन एक स्तर के साधन में से एक हो, तो उस पंक्ति में एक संख्या डालें और बाकी को शून्य से भरें। यदि आप चाहते हैं कि अवरोधन कई स्तरों का हो, तो उन पंक्तियों और शून्य में संख्याओं को डालें। यदि आप चाहते हैं कि यह एक भारित माध्य हो, तो विभिन्न संख्याओं का उपयोग करें, अन्यथा समान संख्या का उपयोग करें। आप इंटरसेप्ट कॉलम में नकारात्मक मान भी डाल सकते हैं और शायद इसका मतलब भी कुछ है, लेकिन यह पूरी तरह से अन्य विरोधाभासों को बदल देता है, इसलिए मुझे नहीं पता कि इसके लिए क्या है
- बाकी स्तंभों में सकारात्मक और नकारात्मक मूल्यों के साथ भरें जो यह दर्शाता है कि आप दूसरों की तुलना में क्या स्तर चाहते हैं। मैं भूल गया कि शून्य का योग महत्वपूर्ण क्यों है, लेकिन मानों को समायोजित करें ताकि कॉलम शून्य पर योग करें।
t()
फ़ंक्शन का उपयोग करके मैट्रिक्स को स्थानांतरित करें ।- पैकेज
ginv()
से उपयोग करेंMASS
याsolve()
ट्रांसपोज़्ड मैट्रिक्स का व्युत्क्रम प्राप्त करने के लिए। - पहला कॉलम ड्रॉप करें, जैसे
mycontrast<-mycontrast[,-1]
। अब आपके पास px-1 मैट्रिक्स है, लेकिन आपने जो जानकारी अपने इंटरसेप्ट के लिए रखी थी, वह चरण 5 के दौरान मैट्रिक्स में एनकोडेड थी। - यदि आप
lm()
एट अल के डिफॉल्ट आउटपुट की तुलना में सारांश आउटपुट में लेबल अधिक सुखद चाहते हैं , तो अपने मैट्रिक्स के कॉलम को नाम दें। अवरोधन हमेशा स्वचालित रूप से नाम मिलेगा(Intercept)
। - अपने मैट्रिक्स को प्रश्न के कारक के लिए नया कंट्रास्ट बनाएं, जैसे
contrasts(mydata$myfactor)<-mymatrix
lm()
लोड होने , याglht
, के बिना मानक आर में सामान्य के रूप में (और शायद कई अन्य फ़ंक्शन जो सूत्र का उपयोग करते हैं) चलाएँ ।doBy
contrasts
Glen_b, धन्यवाद, और UCLA सांख्यिकीय परामर्श समूह धन्यवाद। मेरे लागू आँकड़ों ने इस विषय पर कई दिन बिताए हैं, और मुझे अभी भी इस बात का कोई पता नहीं है कि वास्तव में अपने स्वयं के विपरीत मैट्रिक्स को कैसे लिखना है। और अब, आर के साथ पढ़ने और खेलने का एक घंटा, और मैं अंत में सोचता हूं कि मुझे यह मिल गया है। मुझे लगता है कि मुझे इसके बजाय यूसीएलए के लिए आवेदन करना चाहिए था। या StackExchange विश्वविद्यालय।
contra.helmert
?