टी-परीक्षणों (युग्मित और गैर-युग्मित) के बजाय आर में कौन से क्रमपरिवर्तन परीक्षण कार्यान्वयन।


56

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

x1 <- c(99, 99.5, 65, 100, 99, 99.5, 99, 99.5, 99.5, 57, 100, 99.5, 
        99.5, 99, 99, 99.5, 89.5, 99.5, 100, 99.5)
y1 <- c(99, 99.5, 99.5, 0, 50, 100, 99.5, 99.5, 0, 99.5, 99.5, 90, 
        80, 0, 99, 0, 74.5, 0, 100, 49.5)

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

इसलिए, सामान्य nonparametric परीक्षण, मान-व्हिटनी-यू-टेस्ट (अप्रकाशित) और Wilcoxon टेस्ट (युग्मित), का उपयोग नहीं किया जा सकता क्योंकि उन्हें शर्तों के बीच समान वितरण की आवश्यकता होती है। इसलिए, मैंने फैसला किया कि कुछ रेज़ामापलिंग या क्रमपरिवर्तन परीक्षण सबसे अच्छा होगा।

अब, मैं टी-टेस्ट के क्रमपरिवर्तन-आधारित समकक्ष के आर कार्यान्वयन की तलाश कर रहा हूं, या डेटा के साथ क्या करना है, इस पर कोई अन्य सलाह।

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

अद्यतन: यह आदर्श होगा यदि आप इस परीक्षा से परिणामों की रिपोर्ट करने का एक उदाहरण प्रदान कर सकते हैं।

जवाबों:


43

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

DV <- c(x1, y1)
IV <- factor(rep(c("A", "B"), c(length(x1), length(y1))))
library(coin)                    # for oneway_test(), pvalue()
pvalue(oneway_test(DV ~ IV, alternative="greater", 
                   distribution=approximate(B=9999)))
[1] 0.00330033

library(perm)                    # for permTS()
permTS(DV ~ IV, alternative="greater", method="exact.mc", 
       control=permControl(nmc=10^4-1))$p.value
[1] 0.003

library(exactRankTests)          # for perm.test()
perm.test(DV ~ IV, paired=FALSE, alternative="greater", exact=TRUE)$p.value
[1] 0.003171822

सभी क्रमपरिवर्तन की मैन्युअल गणना के साथ सटीक पी-मान की जांच करने के लिए, मैं डेटा को पहले 9 मानों तक सीमित कर दूंगा।

x1 <- x1[1:9]
y1 <- y1[1:9]
DV <- c(x1, y1)
IV <- factor(rep(c("A", "B"), c(length(x1), length(y1))))
pvalue(oneway_test(DV ~ IV, alternative="greater", distribution="exact"))
[1] 0.0945907

permTS(DV ~ IV, alternative="greater", exact=TRUE)$p.value
[1] 0.0945907

# perm.test() gives different result due to rounding of input values
perm.test(DV ~ IV, paired=FALSE, alternative="greater", exact=TRUE)$p.value
[1] 0.1029412

# manual exact permutation test
idx  <- seq(along=DV)                 # indices to permute
idxA <- combn(idx, length(x1))        # all possibilities for different groups

# function to calculate difference in group means given index vector for group A
getDiffM <- function(x) { mean(DV[x]) - mean(DV[!(idx %in% x)]) }
resDM    <- apply(idxA, 2, getDiffM)  # difference in means for all permutations
diffM    <- mean(x1) - mean(y1)       # empirical differencen in group means

# p-value: proportion of group means at least as extreme as observed one
(pVal <- sum(resDM >= diffM) / length(resDM))
[1] 0.0945907

coinऔर exactRankTestsदोनों एक ही लेखक से हैं, लेकिन coinअधिक सामान्य और व्यापक प्रतीत होता है - प्रलेखन के संदर्भ में भी। exactRankTestsअब सक्रिय रूप से विकसित नहीं हुआ है। इसलिए , जब तक आप S4 ऑब्जेक्ट्स से निपटना पसंद नहीं करते, तब तक मैं coin(जैसे सूचनात्मक कार्यों की वजह से support()) भी चुनूंगा।

संपादित करें: दो निर्भर चर के लिए, वाक्यविन्यास है

id <- factor(rep(1:length(x1), 2))    # factor for participant
pvalue(oneway_test(DV ~ IV | id, alternative="greater",
                   distribution=approximate(B=9999)))
[1] 0.00810081

आपके शानदार उत्तर के लिए धन्यवाद! 2 और प्रश्न: क्या आपके दूसरे उदाहरण का मतलब है, कि सिक्का वास्तव में सभी संभव क्रमपरिवर्तन प्रदान करता है और एक सटीक परीक्षण है? क्या मेरे मामले में एक सटीक परीक्षण प्रदान नहीं करने का कोई लाभ है?
हेनरिक

10
(+1) यह कोई आश्चर्य की बात नहीं है कि (अप्रकाशित) टी-टेस्ट की पैमाइश अनिवार्य रूप से समान पी-वैल्यू, 0.000349 है। क्या समीक्षक ने कहा के बावजूद, टी परीक्षण है इन आंकड़ों के लिए लागू। कारण यह है कि साधनों का नमूना वितरण लगभग सामान्य है, भले ही डेटा के वितरण नहीं हैं। इसके अलावा, जैसा कि आप परिणामों से देख सकते हैं, टी-टेस्ट वास्तव में क्रमपरिवर्तन परीक्षण की तुलना में अधिक रूढ़िवादी है। (यह टी परीक्षण के साथ एक महत्वपूर्ण परिणाम इंगित करता है कि क्रमचय परीक्षण, बहुत महत्वपूर्ण होने की संभावना है का मतलब है।)
whuber

2
@ हेनरिक कुछ स्थितियों के लिए (चुने हुए परीक्षण और संख्यात्मक जटिलता), coinवास्तव में सटीक क्रमचय वितरण की गणना कर सकते हैं (वास्तव में सभी क्रमपरिवर्तन के माध्यम से जा रहे हैं, वहाँ से अधिक सुंदर एल्गोरिदम हैं)। पसंद को देखते हुए, सटीक वितरण बेहतर लगता है, लेकिन मोंटे-कार्लो सन्निकटन की संख्या के साथ उच्च प्रतिकृति के लिए अंतर छोटा होना चाहिए।
काराकल

1
@Caracal स्पष्टीकरण के लिए धन्यवाद। एक प्रश्न शेष है: मैंने जो डेटा प्रस्तुत किया है वह युग्मित है। इसलिए, मुझे युग्मित टी-टेस्ट के बराबर की आवश्यकता है। है oneway_testसही समारोह? और यदि हां, तो गैर-युग्मित डेटा के लिए कौन सा सही है?
हेनरिक

2
@ हेनरिक coinलेखक ने मुझे लिखा है कि oneway_test()निर्भर मामले के लिए सटीक वितरण की गणना नहीं की जा सकती है, आपको एमसी अनुमान के साथ जाना होगा (केवल wilcoxsign_test()सटीक परीक्षण के लिए उपयुक्त है)। मुझे यह नहीं पता था और उस मामले में एक त्रुटि पसंद करेंगे, लेकिन एमसी को उच्च संख्या में प्रतिकृति के साथ सटीक होना चाहिए।
काराकल

29

कुछ टिप्पणियाँ हैं, मुझे विश्वास है, क्रम में।

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

boxplot(x1, y1, names = c("x1", "y1"))

वैकल्पिक शब्द

या यहां तक ​​कि साइड-बाय-स्ट्रिपचार्ट:

stripchart(c(x1,y1) ~ rep(1:2, each = 20), method = "jitter", group.names = c("x1","y1"), xlab = "")

वैकल्पिक शब्द

एक्स1y1एक्स1y1एक्स1y1y1

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

zपीपी

पी

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

पीपी

यह उत्तर मेरे द्वारा मूल रूप से किए जाने की तुलना में बहुत लंबा है। उसके लिए माफ़ करना।


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

2
(+1) अच्छा विश्लेषण। आप पूरी तरह से सही हैं कि परिणाम स्पष्ट हैं और किसी को पी-मान के साथ बिंदु को दबाने की आवश्यकता नहीं है। आपके (3) के बयान में आप थोड़े अतिवादी हो सकते हैं, क्योंकि टी-टेस्ट में सामान्य रूप से वितरित डेटा की आवश्यकता नहीं होती है। यदि आप चिंतित हैं, तो तिरछापन के लिए मौजूद समायोजन हैं (उदाहरण के लिए, चेन का संस्करण): आप देख सकते हैं कि समायोजित परीक्षण के लिए पी-मान उत्तर बदलता है या नहीं। यदि नहीं, तो आप ठीक हैं। इस विशेष स्थिति में, इन (अत्यधिक तिरछे) डेटा के साथ, टी-टेस्ट ठीक काम करता है।
व्हिबर

(+1) अच्छा कैच! और बहुत अच्छी टिप्पणियाँ।
CHL

हम इस धारणा को स्वीकार करते हुए प्रतीत होते हैं कि अंतर्निहित वितरण यादृच्छिक तात्कालिकता के समान है। तो कोई भी सवाल नहीं उठा सकता: क्या ये दोनों बीटा (0.25, 0.25) से हैं और फिर परीक्षा होगी कि क्या उनके पास समान (गैर) केंद्रीयता पैरामीटर है। और यह कि या तो क्रमपरिवर्तन परीक्षण या विलकॉक्सन का उपयोग करना उचित नहीं होगा?
डीडिन

4

5

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

दोनों वितरण वास्तव में Y1 में 0s के समूह के लिए मेरे जैसे EXCEPT के समान हैं, जो उस नमूने में अन्य टिप्पणियों से बहुत अलग हैं (अगला सबसे छोटा 0-100 के पैमाने पर लगभग 50 है) और साथ ही साथ उन सभी एक्स 1 में। मैं पहले जांच करूंगा कि क्या उन टिप्पणियों के बारे में कुछ अलग था।

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


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

1
@gung एक टिप्पणी पोस्ट करने में सक्षम होने के लिए थोड़ी प्रतिष्ठा लेता है; ;-)।
whuber

4
2(1/2)7.01

4

जैसा कि यह प्रश्न फिर से पॉप हुआ, मैं पैकेज के उपयोग से क्विक-आर और आर के लेखक रॉबर्ट काबाकोफ के आर-ब्लॉगर्स के माध्यम से हाल ही के ब्लॉग पोस्ट से प्रेरित एक और उत्तर जोड़ सकता हूं ।lmPerm

हालाँकि, यह विधियाँ coin@caracakl के उत्तर में पैकेज द्वारा उत्पादित एक (और बहुत ही अस्थिर) परिणामों का उत्पादन करती हैं (भीतर-विषयों के विश्लेषण का पी-मूल्य है 0.008)। विश्लेषण डेटा की तैयारी @ caracal के उत्तर से भी लेता है:

x1 <- c(99, 99.5, 65, 100, 99, 99.5, 99, 99.5, 99.5, 57, 100, 99.5, 
        99.5, 99, 99, 99.5, 89.5, 99.5, 100, 99.5)
y1 <- c(99, 99.5, 99.5, 0, 50, 100, 99.5, 99.5, 0, 99.5, 99.5, 90, 
        80, 0, 99, 0, 74.5, 0, 100, 49.5)

DV <- c(x1, y1)
IV <- factor(rep(c("A", "B"), c(length(x1), length(y1))))
id <- factor(rep(1:length(x1), 2)) 

library(lmPerm)

summary(aovp( DV ~ IV + Error(id)))

पैदा करता है:

> summary(aovp( DV ~ IV + Error(id)))
[1] "Settings:  unique SS "

Error: id
Component 1 :
          Df R Sum Sq R Mean Sq
Residuals 19    15946       839


Error: Within
Component 1 :
          Df R Sum Sq R Mean Sq Iter Pr(Prob)  
IV         1     7924      7924 1004    0.091 .
Residuals 19    21124      1112                
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

यदि आप इसे कई बार चलाते हैं, तो p-मान लगभग ~ .05 और ~1 के बीच कूद जाता है।

हालाँकि यह इस सवाल का जवाब है कि मुझे अंत में एक प्रश्न करने की अनुमति दें (यदि वांछित हो तो मैं इसे एक नए प्रश्न पर ले जा सकता हूं):
यह विश्लेषण क्यों इतना अस्थिर है और इसके विपरीत p- मानों को उत्पन्न करने के लिए कोई भी विचार क्यों उत्पन्न होता है सिक्का विश्लेषण? क्या मैंने कुछ गलत किया?


2
इसे एक अलग प्रश्न के रूप में पूछना बेहतर हो सकता है, अगर यह वास्तव में एक प्रश्न है जिसका आप उत्तर देना चाहते हैं, बजाय एक और संभावित समाधान के जिसे आप w / बाकी सूची देना चाहते हैं। मुझे लगता है कि आप एक त्रुटि स्ट्रैट निर्दिष्ट करते हैं, लेकिन @caracal नहीं करता है; इस अंतर पर मेरा पहला अनुमान होगा b / t इस आउटपुट और उसका। इसके अलावा, जब अनुकरण करते हैं, तो मान आमतौर पर चारों ओर कूदते हैं; प्रतिलिपि प्रस्तुत करने योग्यता के लिए, आप बीज निर्दिष्ट करते हैं, उदाहरण के लिए set.seed(1); MC अनुमान में अधिक सटीकता के लिए, आप पुनरावृत्तियों की संख्या में वृद्धि करते हैं; मैं अनिश्चित हूँ अगर उन में से कोई भी आपके प्रश्न का 'सही' उत्तर हो, लेकिन वे संभवतः प्रासंगिक हैं।
गूँग - मोनिका

2
फिर, मैं सुझाव देता हूं कि फुल परमुटेशन (री-रैंडमाइजेशन) टेस्ट का उपयोग करके मैन्युअल गणनाओं के खिलाफ एमसी परिणामों को बेंचमार्किंग करें। (हमेशा सही परिणाम के करीब) और (आमतौर पर सही परिणाम से बहुत दूर ) की तुलना के लिए अपने उदाहरण के लिए कोड देखें । मुझे नहीं पता कि क्यों बेतहाशा अलग-अलग परिणाम मिलते हैं, लेकिन कम से कम इस मामले के लिए यहां वे अकल्पनीय हैं। मेरे मूल उत्तर में अंतिम कॉल @gung ने निर्भर मामले के लिए त्रुटि स्ट्रैटा को निर्दिष्ट किया (द्वारा प्रयुक्त की तुलना में अलग सिंटैक्स )। oneway_anova()aovp()aovp()oneway_test(DV ~ IV | id, ...)aov()
कारकल

@ कर्कल, तुम सही कह रहे हो। मैंने संपादन के बाद अंतिम कोड ब्लॉक को नहीं देखा। मैं शीर्ष कोड ब्लॉक को देख रहा था - मेरी ओर से मैला।
गूँग - मोनिका

मुझे वास्तव में उत्तर की आवश्यकता नहीं है। यह सिर्फ एक और संभावना है जो यहां ध्यान देने योग्य है। दुर्भाग्य से यह अन्य परिणामों से दूर है, जो मुझे भी ध्यान देने योग्य हैं।
हेनरिक

1
@ हेनरिक ने अधिकतम एक्सपेक्ट = 1000 के साथ एओवीपी चलाया। यदि यह बहुत लंबा लगता है, तो iter = 1000000 और Ca = 0.001 सेट करें। गणना समाप्त हो जाती है जब p की अनुमानित मानक त्रुटि Ca * p से कम है। (निम्न मान अधिक स्थिर परिणाम देते हैं।)
xmjx

1

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


स्कोर अनुपात नहीं हैं, लेकिन 0 से 100 पैमाने पर प्रतिभागियों द्वारा अनुमान (प्रस्तुत डेटा उस पैमाने के साथ कई मदों पर अनुमान का साधन हैं)।
हेनरिक

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

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

0

पैकेज ezPermका एक और तरीका जोड़ना ez:

> # preparing the data
> DV <- c(x1, y1)
> IV <- factor(rep(c("A", "B"), c(length(x1), length(y1))))
> id <- factor(rep(1:length(x1), 2))
> df <- data.frame(id=id,DV=DV,IV=IV)
>
> library(ez)
> ezPerm( data = df, dv = DV, wid = id, within = IV, perms = 1000)
|=========================|100%              Completed after 17 s 
  Effect     p p<.05
1     IV 0.016     *

यह करने के लिए संगत प्रतीत हो रहा है oneway_testकी coinपैकेज:

> library(coin)
> pvalue(oneway_test(DV ~ IV | id,  distribution=approximate(B=999999)))
[1] 0.01608002
99 percent confidence interval:
 0.01575782 0.01640682

हालाँकि, ध्यान दें कि यह @caracal द्वारा उपलब्ध कराया गया उदाहरण नहीं है । अपने उदाहरण में, वे शामिल हैं alternative="greater", इसलिए पी-मूल्यों ~0.008बनाम में अंतर ~0.016

aovpपैकेज का सुझाव दिया जवाब में से एक संदेह से कम पी मूल्यों का उत्पादन में, और संदेह से तेजी से भी जब मैं के लिए उच्च मूल्यों की कोशिश चलाता है Iter, Caऔर maxIterतर्क:

library(lmPerm)
summary(aovp(DV ~ IV + Error(id/IV), data=df,  maxIter = 1000000000))
summary(aovp(DV ~ IV + Error(id/IV), data=df,  Iter = 1000000000))
summary(aovp(DV ~ IV + Error(id/IV), data=df,  Ca = 0.00000000001))

उस ने कहा, तर्कों से पी-मूल्यों की विविधता को थोड़ा कम किया जा रहा है ~.03और ~.1(मुझे @Henrik द्वारा रिपोर्ट की गई तुलना में एक बड़ी सीमा मिली), 0.03और 0.07

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