मिश्रित प्रभाव मॉडल: एक समूह चर के स्तरों में यादृच्छिक विचरण घटक की तुलना करें


14

मान लीजिए कि मेरे पास प्रतिभागी हैं, जिनमें से प्रत्येक ने Y को 20 बार, एक स्थिति में 10 और दूसरे को 10 में जवाब दिया। मैं प्रत्येक स्थिति में Y की तुलना करते हुए एक रैखिक मिश्रित प्रभाव मॉडल फिट करता हूं । यहाँ पैकेज का उपयोग करके इस स्थिति का अनुकरण करने वाला एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण दिया गया है :NYYlme4R

library(lme4)
fml <- "~ condition + (condition | participant_id)"
d <- expand.grid(participant_id=1:40, trial_num=1:10)
d <- rbind(cbind(d, condition="control"), cbind(d, condition="experimental"))

set.seed(23432)
d <- cbind(d, simulate(formula(fml), 
                       newparams=list(beta=c(0, .5), 
                                      theta=c(.5, 0, 0), 
                                      sigma=1), 
                       family=gaussian, 
                       newdata=d))

m <- lmer(paste("sim_1 ", fml), data=d)
summary(m)

मॉडल mदो निश्चित प्रभाव (स्थिति के लिए एक अवरोधन और ढलान), और तीन यादृच्छिक प्रभाव (बाय-पार्टिसिपेंट रैंडम इंटरसेप्ट, शर्त के लिए एक प्रतिभागी यादृच्छिक ढलान, और एक अवरोधन-ढलान सहसंबंध) उत्पन्न करता है।

मैं सांख्यिकीय रूप से उप-प्रतिभागी यादृच्छिक अंतरविरोध विचरण के आकार की तुलना समूहों द्वारा परिभाषित condition(अर्थात, नियंत्रण और प्रायोगिक स्थितियों में अलग से लाल रंग में हाइलाइट किए गए विचरण घटक की गणना करना चाहूँगा , फिर परीक्षण करूँगा कि क्या घटकों के आकार में अंतर है? गैर शून्य है)। मैं यह कैसे करूँगा (अधिमानतः R में)?

यहाँ छवि विवरण दर्ज करें


बक्शीश

मान लें कि मॉडल थोड़ा अधिक जटिल है: प्रतिभागियों को प्रत्येक में 10 उत्तेजनाएं 20 बार अनुभव होती हैं, एक स्थिति में 10 और दूसरे में 10। इस प्रकार, पार किए गए यादृच्छिक प्रभावों के दो सेट हैं: प्रतिभागी के लिए यादृच्छिक प्रभाव और उत्तेजना के लिए यादृच्छिक प्रभाव। यहाँ एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण है:

library(lme4)
fml <- "~ condition + (condition | participant_id) + (condition | stimulus_id)"
d <- expand.grid(participant_id=1:40, stimulus_id=1:10, trial_num=1:10)
d <- rbind(cbind(d, condition="control"), cbind(d, condition="experimental"))

set.seed(23432)
d <- cbind(d, simulate(formula(fml), 
                       newparams=list(beta=c(0, .5), 
                                      theta=c(.5, 0, 0, .5, 0, 0), 
                                      sigma=1), 
                       family=gaussian, 
                       newdata=d))

m <- lmer(paste("sim_1 ", fml), data=d)
summary(m)

मैं सांख्यिकीय रूप से परिभाषित समूहों द्वारा पूरे समूह में रैंडम बाय-पार्टिसिपेट इंटरसेप्ट विचरण के परिमाण की तुलना करना चाहूंगा condition। मैं ऐसा कैसे करूंगा, और क्या यह प्रक्रिया ऊपर वर्णित स्थिति में किसी से अलग है?


संपादित करें

जो मैं देख रहा हूँ, उसके बारे में थोड़ा और विशिष्ट होने के लिए, मैं जानना चाहता हूँ:

  1. क्या यह सवाल है, "प्रत्येक स्थिति के भीतर सशर्त माध्य प्रतिक्रियाएं हैं (यानी, प्रत्येक स्थिति में यादृच्छिक अवरोधन मूल्य) एक दूसरे से काफी अलग हैं, नमूना त्रुटि के कारण हम क्या उम्मीद करेंगे" एक अच्छी तरह से परिभाषित प्रश्न (यानी, यह सवाल है सैद्धांतिक रूप से जवाबदेह भी)? यदि नहीं, तो क्यों नहीं?
  2. यदि प्रश्न (1) का उत्तर हां है, तो मैं इसका उत्तर कैसे दूंगा? मैं एक Rकार्यान्वयन पसंद करूंगा , लेकिन मैं lme4पैकेज से बंधा नहीं हूं - उदाहरण के लिए, ऐसा लगता है जैसे OpenMxपैकेज में बहु-समूह और बहु-स्तरीय विश्लेषण ( https: //openmx.ssri.psu) को समायोजित करने की क्षमता है । edu / openmx-features ), और यह उस तरह के प्रश्न की तरह लगता है जो एक SEM फ्रेमवर्क में उत्तर देने योग्य होना चाहिए।

1
@MarkWhite, मैंने आपकी टिप्पणियों के जवाब में सवाल अपडेट किया है। मेरा मतलब है कि मैं प्रतिभागी इंटरसेप्ट्स के मानक विचलन की तुलना करना चाहता हूं जब वे नियंत्रण स्थिति में प्रतिक्रिया देते हैं बनाम जब वे प्रयोगात्मक स्थिति में प्रतिक्रिया देते हैं। मैं यह सांख्यिकीय रूप से करना चाहता हूं, अर्थात, यदि परीक्षण अंतर के मानक विचलन में अंतर 0. से भिन्न है, तो परीक्षण करें
पैट्रिक एस। फ़ॉश्चर

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

2
मैं एक पेपर के लिए एक संशोधन और फिर से शुरू करने पर काम कर रहा हूं जहां मेरे पास प्रतिभागी हैं जो उत्तेजनाओं के सेट पर प्रतिक्रिया देते हैं। प्रत्येक प्रतिभागी को कई स्थितियों से अवगत कराया जाता है और प्रत्येक उत्तेजना को कई स्थितियों में प्रतिक्रिया मिलती है - दूसरे शब्दों में, मेरा अध्ययन मेरे "बोनस" विवरण में वर्णित सेटअप का अनुकरण करता है। मेरे एक ग्राफ में, ऐसा प्रतीत होता है कि औसत प्रतिभागी प्रतिक्रिया में अन्य की तुलना में एक स्थिति में अधिक परिवर्तनशीलता है। एक समीक्षक ने मुझे परीक्षण करने के लिए कहा कि क्या यह सच है।
पैट्रिक एस। फ़ॉश्चर

2
कृपया देखें कि समूहीकरण चर के प्रत्येक स्तर के लिए भिन्न भिन्न मापदंडों के साथ एक lme4 मॉडल कैसे सेट किया जाए , इसके लिए आंकड़े . stackexchange.com/questions/322213 देखें । मुझे यकीन नहीं है कि कैसे एक परिकल्पना परीक्षण करना है कि क्या दो विचरण पैरामीटर समान हैं; व्यक्तिगत रूप से, मैं हमेशा विश्वास अंतराल प्राप्त करने के लिए विषयों और उत्तेजनाओं पर बूटस्ट्रैप करना पसंद करूंगा, या हो सकता है कि किसी तरह के क्रमपरिवर्तन-जैसे (resampling आधारित) परिकल्पना परीक्षण की स्थापना करूं।
अमीबा का कहना है कि

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

जवाबों:


6

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

संक्षिप्त जवाब

अपने स्वतंत्र चर के लिए कोडिंग के विपरीत (शून्य तक) स्विच करें और फिर अपने पूर्ण मॉडल की तुलना एक मॉडल से करने की संभावना अनुपात परीक्षण करें जो यादृच्छिक ढलानों और यादृच्छिक अवरोधों के बीच सहसंबंध को बाध्य करता है 0:

# switch to numeric (not factor) contrast codes
d$contrast <- 2*(d$condition == 'experimental') - 1

# reduced model without correlation parameter
mod1 <- lmer(sim_1 ~ contrast + (contrast || participant_id), data=d)

# full model with correlation parameter
mod2 <- lmer(sim_1 ~ contrast + (contrast | participant_id), data=d)

# likelihood ratio test
anova(mod1, mod2)

दृश्य व्याख्या / अंतर्ज्ञान

X=0

यादृच्छिक सहसंबंध

इस कथानक में, हम प्रत्येक स्थिति में प्रत्येक विषय के लिए कई टिप्पणियों को अनदेखा करते हैं और इसके बजाय बस प्रत्येक विषय के दो यादृच्छिक साधनों की साजिश करते हैं, उन्हें जोड़ने वाली रेखा के साथ, उस विषय के यादृच्छिक ढलान का प्रतिनिधित्व करते हैं। (यह 10 काल्पनिक विषयों का डेटा है, न कि ओपी में पोस्ट किया गया डेटा।)

X=0X=1X=1

X=1X=1

X=0

X=0X=1

यहाँ छवि विवरण दर्ज करें

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

प्रमाण

yijkjikk

yijk=αi+βixk+eijk,
αiσα2βiσβ2eijkcov(αi,βi)=σαβ

var(αi+βix1)=var(αi+βix2)σαβ=0.

var(αi+βix1)=var(αi+βix2)σα2+x12σβ2+2x1σαβ=σα2+x22σβ2+2x2σαβσβ2(x12x22)+2σαβ(x1x2)=0.

x1+x2=0x12=x22=x2

σβ2(x2x2)+2σαβ(x1+x1)=0σαβ=0,

σαβ=0

x1=0x2=1

var(αi)=var(αi+βi)σαβ=σβ22.


यह पहले से ही एक भयानक जवाब है, धन्यवाद! मुझे लगता है कि यह मेरे सवाल का जवाब देने के सबसे करीब है, इसलिए मैं इसे स्वीकार कर रहा हूं और आपको इनाम (यह समाप्त होने वाला है) दे रहा हूं, लेकिन अगर आपके पास इसके लिए समय और ऊर्जा है तो मैं एक बीजीय औचित्य देखना पसंद करूंगा।
पैट्रिक एस। फ़ॉश्चर

1
@ पैट्रिक एस.फोर्सचर मैंने सिर्फ एक प्रमाण जोड़ा
जेक वेस्टफॉल

1
aa(1 | subject)dummyaa

1
अब मैं देख रहा हूँ कि आप सही हैं @amoeba, समझाने के लिए धन्यवाद। मैं उसी के अनुसार अपना उत्तर संपादित करूंगा।
जेक वेस्टफॉल

1
@amoeba आप सही हैं कि यह संभव है कि BLUP मॉडल में सहसंबंध पैरामीटर के बिना भी सहसंबद्ध हो सकता है। लेकिन मेरा मानना ​​है कि परीक्षण के प्रयोजनों के लिए प्रक्रिया अभी भी इरादा के अनुसार काम करती है (उदाहरण के लिए, इसमें नाममात्र प्रकार 1 त्रुटि दर है) क्योंकि केवल सहसंबंध पैरामीटर वाला मॉडल उस कार्य को शामिल करने में सक्षम है और इस प्रकार "क्रेडिट प्राप्त करता है" । यही है, भले ही बीएलयूपी सरल मॉडल में सहसंबद्ध होकर बाहर आते हैं, यह अभी भी है जैसे कि प्रभाव अभी तक असंबंधित हैं जहां तक ​​कुल संभावना का संबंध है, इसलिए एलआर परीक्षण काम करेगा। मुझे लगता है :)
जेक वेस्टफॉल

6

आप मॉडल मापदंडों के महत्व का परीक्षण कर सकते हैं, अनुमानित आत्मविश्वास अंतराल की मदद से जिसके लिए lme4 पैकेज में confint.merModफ़ंक्शन है।

बूटस्ट्रैपिंग (उदाहरण के लिए देखें बूटस्ट्रैप से कॉन्फिडेंस इंटरवल )

> confint(m, method="boot", nsim=500, oldNames= FALSE)
Computing bootstrap confidence intervals ...
                                                           2.5 %     97.5 %
sd_(Intercept)|participant_id                         0.32764600 0.64763277
cor_conditionexperimental.(Intercept)|participant_id -1.00000000 1.00000000
sd_conditionexperimental|participant_id               0.02249989 0.46871800
sigma                                                 0.97933979 1.08314696
(Intercept)                                          -0.29669088 0.06169473
conditionexperimental                                 0.26539992 0.60940435 

संभावना प्रोफाइल (उदाहरण के लिए देखें प्रोफ़ाइल संभावना और विश्वास अंतराल के बीच संबंध क्या है? )

> confint(m, method="profile", oldNames= FALSE)
Computing profile confidence intervals ...
                                                          2.5 %     97.5 %
sd_(Intercept)|participant_id                         0.3490878 0.66714551
cor_conditionexperimental.(Intercept)|participant_id -1.0000000 1.00000000
sd_conditionexperimental|participant_id               0.0000000 0.49076950
sigma                                                 0.9759407 1.08217870
(Intercept)                                          -0.2999380 0.07194055
conditionexperimental                                 0.2707319 0.60727448

  • एक विधि भी है 'Wald'लेकिन इसे केवल निश्चित प्रभावों के लिए लागू किया जाता है।

  • पैकेज में कुछ प्रकार के एनोवा (संभावना अनुपात) प्रकार के अभिव्यक्ति भी मौजूद हैं lmerTestजिन्हें नाम दिया गया है ranova। लेकिन मुझे इससे कोई मतलब नहीं लग सकता है। LogLikelihood में मतभेदों का वितरण, जब शून्य परिकल्पना (यादृच्छिक प्रभाव के लिए शून्य विचरण) सच है , ची-स्क्वायर वितरित नहीं किया गया है (संभवतः जब प्रतिभागियों और परीक्षणों की संख्या अधिक हो तो संभावना अनुपात परीक्षण समझ में आ सकता है)।


विशिष्ट समूहों में भिन्नता

उन विशिष्ट समूहों में विचरण के लिए परिणाम प्राप्त करने के लिए जिन्हें आप पुन: एकत्रित कर सकते हैं

# different model with alternative parameterization (and also correlation taken out) 
fml1 <- "~ condition + (0 + control + experimental || participant_id) "

जहां हमने डेटा-फ्रेम में दो कॉलम जोड़े (यह केवल तभी आवश्यक है जब आप गैर-सहसंबंधित 'नियंत्रण' और 'प्रायोगिक' (0 + condition || participant_id)का मूल्यांकन करना चाहते हैं, तो यह फ़ंक्शन गैर-सहसंबद्ध के रूप में विभिन्न कारकों के मूल्यांकन की ओर नहीं ले जाएगा)

#adding extra columns for control and experimental
d <- cbind(d,as.numeric(d$condition=='control'))
d <- cbind(d,1-as.numeric(d$condition=='control'))
names(d)[c(4,5)] <- c("control","experimental")

अब lmerविभिन्न समूहों के लिए विचरण करेगा

> m <- lmer(paste("sim_1 ", fml1), data=d)
> m
Linear mixed model fit by REML ['lmerModLmerTest']
Formula: paste("sim_1 ", fml1)
   Data: d
REML criterion at convergence: 2408.186
Random effects:
 Groups           Name         Std.Dev.
 participant_id   control      0.4963  
 participant_id.1 experimental 0.4554  
 Residual                      1.0268  
Number of obs: 800, groups:  participant_id, 40
Fixed Effects:
          (Intercept)  conditionexperimental  
               -0.114                  0.439 

और आप इन पर प्रोफाइल विधियों को लागू कर सकते हैं। उदाहरण के लिए, अब कॉन्फिडेंस नियंत्रण और बाह्य भिन्नता के लिए विश्वास अंतराल देता है।

> confint(m, method="profile", oldNames= FALSE)
Computing profile confidence intervals ...
                                    2.5 %     97.5 %
sd_control|participant_id       0.3490873 0.66714568
sd_experimental|participant_id  0.3106425 0.61975534
sigma                           0.9759407 1.08217872
(Intercept)                    -0.2999382 0.07194076
conditionexperimental           0.1865125 0.69149396

सादगी

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

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

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

सरल उदाहरण है

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

j

Y^i,jN(μj,σj2+σϵ210)

σϵσjj={1,2}

आप इसे नीचे दिए गए ग्राफ़ के अनुकरण में देख सकते हैं, जहां नमूना के आधार पर एफ-स्कोर के लिए अलग-अलग मॉडल से पूर्वानुमानित संस्करण (या वर्ग त्रुटि के योग) के आधार पर एक एफ-स्कोर की गणना की जाती है।

उदाहरण सटीकता में अंतर

σj=1=σj=2=0.5σϵ=1

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

σj=1σj=2Y^i,jσjσϵ

उदाहरण के लिए सत्ता में अंतर

σj=1=0.5σj=2=0.25σϵ=1

इसलिए साधनों पर आधारित मॉडल बहुत सटीक है। लेकिन यह कम शक्तिशाली है। इससे पता चलता है कि सही रणनीति इस बात पर निर्भर करती है कि आपको क्या चाहिए / क्या चाहिए।

ऊपर दिए गए उदाहरण में जब आप 2.1 और 3.1 पर सही पूंछ की सीमा निर्धारित करते हैं, तो आपको समान विचरण के मामले में लगभग 1% आबादी मिलती है (10 000 के मामलों में 103 और 104 के संबंध में), लेकिन असमान विचरण के मामले में ये सीमाएँ भिन्न होती हैं बहुत कुछ (मामलों के 5334 और 6716)

कोड:

set.seed(23432)

# different model with alternative parameterization (and also correlation taken out)
fml1 <- "~ condition + (0 + control + experimental || participant_id) "
fml <- "~ condition + (condition | participant_id)"

n <- 10000

theta_m <- matrix(rep(0,n*2),n)
theta_f <- matrix(rep(0,n*2),n)

# initial data frame later changed into d by adding a sixth sim_1 column
ds <- expand.grid(participant_id=1:40, trial_num=1:10)
ds <- rbind(cbind(ds, condition="control"), cbind(ds, condition="experimental"))
  #adding extra columns for control and experimental
  ds <- cbind(ds,as.numeric(ds$condition=='control'))
  ds <- cbind(ds,1-as.numeric(ds$condition=='control'))
  names(ds)[c(4,5)] <- c("control","experimental")

# defining variances for the population of individual means
stdevs <- c(0.5,0.5) # c(control,experimental)

pb <- txtProgressBar(title = "progress bar", min = 0,
                    max = n, style=3)
for (i in 1:n) {

  indv_means <- c(rep(0,40)+rnorm(40,0,stdevs[1]),rep(0.5,40)+rnorm(40,0,stdevs[2]))
  fill <- indv_means[d[,1]+d[,5]*40]+rnorm(80*10,0,sqrt(1)) #using a different way to make the data because the simulate is not creating independent data in the two groups 
  #fill <- suppressMessages(simulate(formula(fml), 
  #                     newparams=list(beta=c(0, .5), 
  #                                    theta=c(.5, 0, 0), 
  #                                    sigma=1), 
  #                     family=gaussian, 
  #                     newdata=ds))
  d <- cbind(ds, fill)
  names(d)[6] <- c("sim_1")


  m <- lmer(paste("sim_1 ", fml1), data=d)
  m
  theta_m[i,] <- m@theta^2

  imeans <- aggregate(d[, 6], list(d[,c(1)],d[,c(3)]), mean)
  theta_f[i,1] <- var(imeans[c(1:40),3])
  theta_f[i,2] <- var(imeans[c(41:80),3])

  setTxtProgressBar(pb, i)
}
close(pb)

p1 <- hist(theta_f[,1]/theta_f[,2], breaks = seq(0,6,0.06))       
fr <- theta_m[,1]/theta_m[,2]
fr <- fr[which(fr<30)]
p2 <- hist(fr, breaks = seq(0,30,0.06))



plot(-100,-100, xlim=c(0,6), ylim=c(0,800), 
     xlab="F-score", ylab = "counts [n out of 10 000]")
plot( p1, col=rgb(0,0,1,1/4), xlim=c(0,6), ylim=c(0,800), add=T)  # means based F-score
plot( p2, col=rgb(1,0,0,1/4), xlim=c(0,6), ylim=c(0,800), add=T)  # model based F-score
fr <- seq(0, 4, 0.01)
lines(fr,df(fr,39,39)*n*0.06,col=1)
legend(2, 800, c("means based F-score","mixed regression based F-score"), 
       fill=c(rgb(0,0,1,1/4),rgb(1,0,0,1/4)),box.col =NA, bg = NA)
legend(2, 760, c("F(39,39) distribution"), 
       lty=c(1),box.col = NA,bg = NA)
title(expression(paste(sigma[1]==0.5, " , ", sigma[2]==0.5, " and ", sigma[epsilon]==1)))

यह उपयोगी है, लेकिन दो स्थितियों में भिन्नताओं की तुलना कैसे करें, इस सवाल का समाधान नहीं दिखता है।
अमीबा का कहना है कि मोनिका

@amoeba मैंने पाया कि यह उत्तर मुद्दे के मूल (यादृच्छिक विचरण घटकों के परीक्षण के बारे में) देता है। ओपी जो चाहता है वह पूरे पाठ में पढ़ना मुश्किल है। "रैंडम इंटरसेप्ट वर्जन" का क्या अर्थ है? (इंटरसेप्ट के संबंध में बहुवचन मुझे भ्रमित करता है) एक संभव मामला उस मॉडल का उपयोग करने के लिए हो सकता है sim_1 ~ condition + (0 + condition | participant_id)"जिस स्थिति में आपको दो मापदंडों के बजाय दो मापदंडों (प्रत्येक समूह के लिए एक) में एक पैरामीटर प्राप्त होता है और अवरोधन के लिए एक (प्रभाव के लिए एक) समूहों के लिए संयुक्त होने की आवश्यकता है)।
सेक्स्टस एम्पिरिकस

प्रत्येक विषय में हालत ए में कुछ माध्य प्रतिक्रिया है और स्थिति बी में कुछ माध्य प्रतिक्रिया है। प्रश्न यह है कि क्या ए में विषयों के विचरण बी में विषयों के विचरण से अलग है
अमीबा का कहना है कि मोनिका

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

car::linearHypothesisTest( Math.furman.edu/~dcs/courses/math47/R/library/car/html/… ) का उपयोग करके प्रश्न का उत्तर देना संभव हो सकता है , जो उपयोगकर्ता को एक फिट मॉडल के साथ मनमाना परिकल्पना का परीक्षण करने की अनुमति देता है। हालाँकि, मुझे @ amoeba की विधि का उपयोग एक ही मॉडल फिट किए गए मॉडल में दोनों रैंडम इंटरसेप्ट प्राप्त करने के लिए करना होगा ताकि उनकी तुलना इस फंक्शन से की जा सके। मैं भी विधि की वैधता के लिए थोड़ा अनिश्चित हूं।
पैट्रिक एस। फ़ॉश्चर

5

एक अपेक्षाकृत सीधे-सीधे तरीके anovaसे lme4एफएक्यू में वर्णित के माध्यम से संभावना-अनुपात परीक्षणों का उपयोग किया जा सकता है ।

हम एक पूर्ण मॉडल के साथ शुरू करते हैं, जिसमें भिन्नताएं असंबंधित होती हैं (अर्थात, दो भिन्न भिन्न प्रकारों की अनुमति होती है) और फिर एक विवश मॉडल को फिट करते हैं जिसमें दो संस्करण समान माने जाते हैं। हम तो बस उन लोगों के साथ तुलना anova()(ध्यान दें मैं सेट कि REML = FALSEहालांकि REML = TRUEसाथ anova(..., refit = FALSE)पूरी तरह से संभव है )।

m_full <- lmer(sim_1 ~ condition + (condition | participant_id), data=d, REML = FALSE)
summary(m_full)$varcor
 # Groups         Name                  Std.Dev. Corr  
 # participant_id (Intercept)           0.48741        
 #                conditionexperimental 0.26468  -0.419
 # Residual                             1.02677     

m_red <- lmer(sim_1 ~ condition + (1 | participant_id), data=d, REML = FALSE)
summary(m_red)$varcor
 # Groups         Name        Std.Dev.
 # participant_id (Intercept) 0.44734 
 # Residual                   1.03571 

anova(m_full, m_red)
# Data: d
# Models:
# m_red: sim_1 ~ condition + (1 | participant_id)
# m_full: sim_1 ~ condition + (condition | participant_id)
#        Df    AIC    BIC  logLik deviance  Chisq Chi Df Pr(>Chisq)
# m_red   4 2396.6 2415.3 -1194.3   2388.6                         
# m_full  6 2398.7 2426.8 -1193.3   2386.7 1.9037      2      0.386

हालांकि, यह परीक्षण संभावित रूढ़िवादी है । उदाहरण के लिए, FAQ कहता है:

ध्यान रखें कि LRT- आधारित शून्य परिकल्पना परीक्षण रूढ़िवादी होते हैं जब शून्य मान (जैसे is2 = 0) संभव स्थान की सीमा पर होता है; सरलतम मामले में (एकल यादृच्छिक प्रभाव विचरण), पी-मूल्य लगभग दोगुना है जितना कि यह होना चाहिए (पिनहेइरो और बेट्स 2000)।

कई विकल्प हैं:

  1. χ2

  2. सही वितरण का उपयोग करके अनुकरण करें RLRsim(जैसा कि FAQ में भी वर्णित है)।

मैं निम्नलिखित में दूसरा विकल्प प्रदर्शित करूंगा:

library("RLRsim")
## reparametrize model so we can get one parameter that we want to be zero:
afex::set_sum_contrasts() ## warning, changes contrasts globally
d <- cbind(d, difference = model.matrix(~condition, d)[,"condition1"])

m_full2 <- lmer(sim_1 ~ condition + (difference | participant_id), data=d, REML = FALSE)
all.equal(deviance(m_full), deviance(m_full2))  ## both full models are identical

## however, we need the full model without correlation!
m_full2b <- lmer(sim_1 ~ condition + (1| participant_id) + 
                   (0 + difference | participant_id), data=d, REML = FALSE)
summary(m_full2b)$varcor
 # Groups           Name        Std.Dev.
 # participant_id   (Intercept) 0.44837 
 # participant_id.1 difference  0.13234 
 # Residual                     1.02677 

## model that only has random effect to be tested
m_red <- update(m_full2b,  . ~ . - (1 | participant_id), data=d, REML = FALSE)
summary(m_red)$varcor
 # Groups         Name       Std.Dev.
 # participant_id difference 0.083262
 # Residual                  1.125116

## Null model 
m_null <- update(m_full2b,  . ~ . - (0 + difference | participant_id), data=d, REML = FALSE)
summary(m_null)$varcor
 # Groups         Name        Std.Dev.
 # participant_id (Intercept) 0.44734 
 # Residual                   1.03571 

exactRLRT(m_red, m_full2b, m_null)
# Using restricted likelihood evaluated at ML estimators.
# Refit with method="REML" for exact results.
# 
#   simulated finite sample distribution of RLRT.
#   
#   (p-value based on 10000 simulated values)
# 
# data:  
# RLRT = 1.9698, p-value = 0.0719

जैसा कि हम देख सकते हैं, आउटपुट बताता है कि REML = TRUEहम सटीक परिणाम प्राप्त करेंगे। लेकिन यह पाठक को एक अभ्यास के रूप में छोड़ दिया जाता है।

बोनस के बारे में, मुझे यकीन नहीं है कि अगर RLRsimएक साथ कई घटकों के परीक्षण की अनुमति मिलती है, लेकिन यदि ऐसा है, तो यह उसी तरह से किया जा सकता है।


टिप्पणी करने के लिए प्रतिक्रिया:

θXθ0X

मुझे यकीन नहीं है कि यह प्रश्न एक उचित उत्तर प्राप्त कर सकता है।

  • एक यादृच्छिक अवरोधन समूहन कारक के प्रत्येक स्तर के लिए समग्र स्तर में एक अज्ञात अंतर की अनुमति देता है। उदाहरण के लिए, यदि आश्रित चर प्रतिक्रिया समय है, तो कुछ प्रतिभागी तेज़ हैं और कुछ धीमे हैं।
  • एक यादृच्छिक ढलान समूहीकरण कारक के प्रत्येक स्तर को कारक के एक अज्ञात प्रभाव के लिए अनुमति देता है जिसके लिए यादृच्छिक ढलान का अनुमान है। उदाहरण के लिए, यदि कारक अनुरूपता है, तो कुछ प्रतिभागियों में दूसरों की तुलना में अधिक बधाई प्रभाव हो सकता है।

तो क्या यादृच्छिक-ढलान यादृच्छिक-अवरोधन को प्रभावित करते हैं? कुछ अर्थों में यह समझ में आ सकता है, क्योंकि वे समूह के प्रत्येक स्तर को प्रत्येक स्थिति के लिए एक पूरी तरह से निष्क्रिय प्रभाव की अनुमति देते हैं। अंत में, हम दो स्थितियों के लिए दो अज्ञात मापदंडों का अनुमान लगाते हैं। हालाँकि, मुझे लगता है कि अवरोधन द्वारा पकड़े गए समग्र स्तर और यादृच्छिक ढलान द्वारा पकड़े गए स्थिति विशिष्ट प्रभाव के बीच का अंतर एक महत्वपूर्ण है और फिर यादृच्छिक ढलान वास्तव में यादृच्छिक अवरोधन को प्रभावित नहीं कर सकता है। हालाँकि, यह अभी भी समूह के प्रत्येक स्तर को स्थिति के प्रत्येक स्तर के लिए अलग से एक idiosyncratic की अनुमति देता है।

फिर भी, मेरा परीक्षण अभी भी वही करता है जो मूल प्रश्न चाहता है। यह परीक्षण करता है कि क्या दो स्थितियों के बीच भिन्नता में अंतर शून्य है। यदि यह शून्य है, तो दोनों स्थितियों में भिन्नताएं समान हैं। दूसरे शब्दों में, केवल अगर यादृच्छिक-ढलान की कोई आवश्यकता नहीं है, तो दोनों स्थितियों में समान रूप से भिन्नता है। मुझे उम्मीद है कि इसका कोई अर्थ है।


1
आप उपचार विरोधाभासों ( contr.treatment) का उपयोग करते हैं जिसके लिए नियंत्रण की स्थिति संदर्भ है (यानी, जिसके लिए यादृच्छिक अवरोधन की गणना की जाती है)। मैं जिस परिमाण का प्रस्ताव करता हूं, मैं सम विषम (यानी contr.sum) का उपयोग करता हूं और इंटरसेप्ट भव्य माध्य है। मुझे ऐसा लगता है कि यह परीक्षण करने के लिए अधिक समझ में आता है कि क्या अंतर अशक्त है जब अवरोधक नियंत्रण की स्थिति के बजाय भव्य मतलब है (लेकिन यह किया गया लेखन यह सुझाव देता है कि यह अपेक्षाकृत असंगत हो सकता है)। आप पीपी। 24 से 26 तक पढ़ना चाहेंगे: singmann.org/download/publications/…
हेनरिक

1
धन्यवाद! मेरे प्रश्न थोड़े अलग हैं, हालांकि: (1) आपका उत्तर यह लगता है कि मेरा प्रश्न "0 से भिन्न स्थिति के लिए यादृच्छिक ढलान" है। क्या ये सच है? (2) यदि (1) का उत्तर "हां" है, तो यह इसके लिए यादृच्छिक ढलान की एक और व्याख्या का सुझाव conditionदेता है: यह यादृच्छिक अवरोधन के स्तरों में भिन्नता की अनुमति देता है condition। क्या ये सच है?
पैट्रिक एस। फ़ॉश्चर

2
हेनरीक की प्रस्तावित प्रक्रिया के लिए मेरा 2 ample: @amoeba का प्रतिधारण सही है। हेनरिक लगभग सही है, लेकिन वह मॉडल की गलत जोड़ी की तुलना करता है। मॉडल तुलना कि इसका जवाब के पैट्रिक प्रश्न मॉडल हेनरिक कहा जाता है के बीच तुलना है m_fullबनाम m_full2b। यह है: ए बनाम बी में प्रतिभागियों की सशर्त माध्य प्रतिक्रियाओं के प्रकार असमान हैं यदि रैंडम इंटरसेप्ट-स्लोप सहसंबंध नॉनजरो है --- महत्वपूर्ण रूप से, सम-टू-जीरो कॉन्ट्रास्ट कोडिंग पैरामीटर के तहत । यादृच्छिक ढलान विचरण का परीक्षण करना आवश्यक नहीं है। सोचने की कोशिश कर रहा है कि इस संक्षिप्त तरीके से कैसे समझा जाए ...
जेक वेस्टफॉल

2
यह वास्तव में एक उचित व्याख्या नहीं है, लेकिन यहां मेरे जवाब का अध्ययन करने से इस मामले पर थोड़ा प्रकाश डाला जा सकता है। मूल रूप से, सहसंबंध पैरामीटर नियंत्रित करता है कि क्या प्रतिभागी प्रतिगमन लाइनें "पंखे से दाईं ओर" (सकारात्मक मार्ग।) या "बाईं ओर पंखा" (नकारात्मक मार्ग) है। या तो प्रतिभागियों की सशर्त माध्य प्रतिक्रियाओं में इन असमान असमान विचरण। सम-टू-ज़ीरो कोडिंग सुनिश्चित करता है कि हम X पर सही बिंदु पर सहसंबंध खोज रहे हैं
Jake Westfall

2
अगर मुझे समय मिल जाए तो मैं चित्रों के साथ उत्तर पोस्ट करने पर विचार करूंगा ...
जेक वेस्टफॉल

5

आपका मॉडल

m = lmer(sim_1 ~ condition + (condition | participant_id), data=d)

पहले से ही नियंत्रण की स्थिति में समग्र-विषय विचरण को प्रयोगात्मक स्थिति में समग्र-विषय विचरण से अलग करने की अनुमति देता है। इसे एक समतुल्य पुन: परिशोधन द्वारा अधिक स्पष्ट किया जा सकता है:

m = lmer(sim_1 ~ 0 + condition + (0 + condition | participant_id), data=d)

यादृच्छिक सहसंयोजक मैट्रिक्स की अब सरल व्याख्या है:

Random effects:
 Groups         Name                  Variance Std.Dev. Corr
 participant_id conditioncontrol      0.2464   0.4963       
                conditionexperimental 0.2074   0.4554   0.83

यहाँ दो संस्करण ठीक उसी प्रकार के दो संस्करण हैं जिनकी आप इसमें रुचि रखते हैं: [समग्र विषयों] नियंत्रण स्थिति में सशर्त माध्य प्रतिक्रियाओं का और प्रायोगिक स्थिति में समान। आपके सिम्युलेटेड डेटासेट में, वे 0.25 और 0.21 हैं। द्वारा अंतर दिया गया है

delta = as.data.frame(VarCorr(m))[1,4] - as.data.frame(VarCorr(m))[2,4]

और 0.039 के बराबर है। आप परीक्षण करना चाहते हैं कि क्या यह शून्य से काफी अलग है।

संपादित करें: मुझे एहसास हुआ कि मैं जिस परमीशन टेस्ट का वर्णन करता हूं वह गलत है; यह नियत नहीं होगा यदि नियंत्रण / प्रायोगिक स्थिति में साधन समान नहीं हैं (क्योंकि तब अवलोकन अशक्त के तहत विनिमेय नहीं हैं)। यह विषयों (या बोनस मामले में विषय / आइटम) को बूटस्ट्रैप करने के लिए एक बेहतर विचार हो सकता है और इसके लिए विश्वास अंतराल प्राप्त कर सकता है delta

मैं ऐसा करने के लिए नीचे दिए गए कोड को ठीक करने का प्रयास करूंगा।


मूल क्रमपरिवर्तन-आधारित सुझाव (गलत)

मुझे अक्सर पता चलता है कि कोई व्यक्ति क्रमपरिवर्तन परीक्षण करके अपने आप को बहुत परेशानी से बचा सकता है। वास्तव में, इस मामले में इसे स्थापित करना बहुत आसान है। आइए प्रत्येक विषय के लिए अलग से नियंत्रण / प्रयोगात्मक शर्तों की अनुमति दें; तब भिन्नताओं के किसी भी अंतर को समाप्त किया जाना चाहिए। इसे कई बार दोहराने से मतभेदों के लिए अशक्त वितरण होगा।

(मैं आर में कार्यक्रम नहीं करता, हर कोई कृपया बेहतर आर शैली में निम्नलिखित को फिर से लिखने के लिए स्वतंत्र महसूस करता है।)

set.seed(42)
nrep = 100
v = matrix(nrow=nrep, ncol=1)
for (i in 1:nrep)
{
   dp = d
   for (s in unique(d$participant_id)){             
     if (rbinom(1,1,.5)==1){
       dp[p$participant_id==s & d$condition=='control',]$condition = 'experimental'
       dp[p$participant_id==s & d$condition=='experimental',]$condition = 'control'
     }
   }
  m <- lmer(sim_1 ~ 0 + condition + (0 + condition | participant_id), data=dp)
  v[i,] = as.data.frame(VarCorr(m))[1,4] - as.data.frame(VarCorr(m))[2,4]
}
pvalue = sum(abs(v) >= abs(delta)) / nrep

p=0.7nrep

बिल्कुल वही तर्क आपके बोनस मामले में लागू किया जा सकता है।


सुपर दिलचस्प, धन्यवाद! मुझे इस बारे में अधिक सोचना होगा कि आपका पुनर्मूल्यांकन कार्य क्यों करता है, क्योंकि यह इस उत्तर की प्रमुख अंतर्दृष्टि प्रतीत होती है।
पैट्रिक एस। फोर्शर

अजीब बात है, आपके उत्तर में प्रति-समूह अवरोधन मान @MartijnWeterings के उत्तर से भिन्न होते हैं।
पैट्रिक एस। फ़ॉश्चर

@ पैट्रिक एस.फोर्शर इसलिए कि वह, मुझे लगता है, एक अलग डेटासेट उत्पन्न करता है। मैं sim_1 ~ 0 + condition + (0 + dummy(condition, "control") + dummy(condition, "experimental") | participant_id)सूत्रीकरण का उपयोग कर सकता हूं और मेरे उत्तर के समान परिणाम प्राप्त कर सकता हूं।
अमीबा का कहना है कि मोनिका

1
@ PatrickS.Forscher नहीं, मैंने आपके कोड (आपके बीज के साथ) द्वारा उत्पन्न डेटा का उपयोग किया है। मैंने क्रमांकन परीक्षण करते समय बीज को केवल 42 पर सेट किया। यह मार्टिज़न है जिसने मुझे नहीं बल्कि डेटासेट को बदल दिया है।
अमीबा का कहना है कि मोनिका

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

0

yijk=μ+αj+dij+eijk,diN(0,Σ),eijkN(0,σ2)
αjjdi=(di1,,diJ)ij
yi1kyi2kABdi

Σ=[σA2σABσABσB2]

σA2σB2

Σ

अवरोधन का विचरण, जो भव्य माध्य से मेल खाता है, है

σ12:=Var(grand mean)=Var(12(A+B))=14(Var(A)+Var(B)+2Cov(A,B)).

कंट्रास्ट का विचरण है

σ22:=Var(contrast)=Var(12(AB))=14(Var(A)+Var(B)2Cov(A,B)).

और इंटरसेप्ट और कॉन्ट्रास्ट के बीच सहसंयोजक है

σ12:=Cov(grand mean, contrast)=Cov(12(A+B),12(AB))=14(Var(A)Var(B)).

Σ

Σ=[σ12+σ22+2σ12σ12σ22σ12σ22σ12+σ222σ12]=[σA2σABσABσB2].

Σ

Σ=[σ12σ12σ12σ12]+[σ22σ22σ22σ22]+2[σ1200σ12].

σ12

Σ=[σ12σ12σ12σ12]+[σ22σ22σ22σ22]=[σ12+σ22σ12σ22σ12σ22σ12+σ22]

जो, के रूप में @Jake वेस्टफॉल थोड़ा अलग ढंग से व्युत्पन्न, बराबर प्रसरण की परिकल्पना का परीक्षण करती है जब हम एक मॉडल जहां सहप्रसरण मानदंड अभी भी शामिल किया गया है / शून्य पर सेट नहीं करने के लिए इस सहप्रसरण पैरामीटर के बिना एक मॉडल की तुलना करें।

विशेष रूप से, एक और पार किए गए यादृच्छिक ग्रुपिंग फैक्टर (जैसे उत्तेजनाओं) को शुरू करने से मॉडल की तुलना में बदलाव नहीं होता है, यानी, anova(mod1, mod2)(वैकल्पिक रूप से तर्क के साथ refit = FALSEजब आप REML आकलन का उपयोग करते हैं) जहां mod1और mod2@Jake वेस्टफॉल के रूप में परिभाषित किया गया है।

σ12σ22

Σ=[σ12σ12σ12σ12]

जो इस परिकल्पना का परीक्षण करता है कि दो स्थितियों में भिन्नताएं समान हैं और वे दो स्थितियों के बीच (सकारात्मक) सहसंयोजक के बराबर हैं।


जब हमारे पास दो स्थितियां होती हैं, तो एक मॉडल जो एक सकारात्मक ( यौगिक ) यौगिक सममित संरचना में दो मापदंडों के साथ एक सहसंयोजक मैट्रिक्स को फिट करता है, उसे भी लिखा जा सकता है।

# code snippet from Jake Westfall
d$contrast <- 2*(d$condition == 'experimental') - 1

# new model
mod3 <- lmer(sim_1 ~ contrast + (1 | participant_id) + (1 | contrast:participant_id), 
             data = d, REML = FALSE) 

या (श्रेणीबद्ध चर / कारक का उपयोग करके condition)

mod4 <- lmer(sim_1 ~ condition + (1 | participant_id) + (1 | condition:participant_id), 
             data = d, REML = FALSE)

साथ में

Σ=[σ12+σ22σ12σ12σ12+σ22]=[σ12σ12σ12σ12]+[σ2200σ22]

σ12σ22Σ

नीचे हम कि देख mod1, mod3है, और mod4बराबर फिट उपज:

# code snippet from Jake Westfall
d$contrast <- 2*(d$condition == 'experimental') - 1

mod1 <- lmer(sim_1 ~ contrast + (contrast || participant_id),
             data = d, REML = FALSE)

mod2 <- lmer(sim_1 ~ contrast + (contrast | participant_id),
             data = d, REML = FALSE)

# new models 
mod3 <- lmer(sim_1 ~ contrast + (1 | participant_id) + (1 | contrast:participant_id), 
             data = d, REML = FALSE) 

mod4 <- lmer(sim_1 ~ condition + (1 | participant_id) + (1 | condition:participant_id), 
             data = d, REML = FALSE)

anova(mod3, mod1)
# Data: d
# Models:
# mod3: sim_1 ~ contrast + (1 | participant_id) + (1 | contrast:participant_id)
# mod1: sim_1 ~ contrast + ((1 | participant_id) + (0 + contrast | participant_id))
#      Df    AIC    BIC  logLik deviance Chisq Chi Df Pr(>Chisq)
# mod3  5 2396.9 2420.3 -1193.5   2386.9                        
# mod1  5 2396.9 2420.3 -1193.5   2386.9     0      0          1

anova(mod4, mod3)
# Data: d
# Models:
# mod4: sim_1 ~ condition + (1 | participant_id) + (1 | condition:participant_id)
# mod3: sim_1 ~ contrast + (1 | participant_id) + (1 | contrast:participant_id)
#      Df    AIC    BIC  logLik deviance Chisq Chi Df Pr(>Chisq)
# mod4  5 2396.9 2420.3 -1193.5   2386.9                        
# mod3  5 2396.9 2420.3 -1193.5   2386.9     0      0          1

Σ

Σ=[σ12σ12+σ12σ12+σ12σ12+σ22+2σ12]=[σ12σ12σ12σ12]+[000σ22]+[0σ12σ122σ12]

σ12Aσ22ABσ12

σ12σ22

mod4Σ

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