हार्टिगन्स के डिप टेस्ट की व्याख्या


18

मैं अनुभवजन्य रूप से मिले कुछ वितरणों की जैव-विविधता की तीव्रता का एक तरीका खोजना चाहता हूं। मैंने जो पढ़ा है, उसमें से अभी भी कुछ मात्रा में जैव विविधता को निर्धारित करने के बारे में बहस है। मैंने हार्टिगन्स के डुबकी परीक्षण का उपयोग करने के लिए चुना है जो आर (मूल कागज: http://www.stat.washington.edu/wxs/Stat593-s03/Literature/hartigan85a.pdf ) पर उपलब्ध है। हार्टिगन्स के डिप टेस्ट को इस प्रकार परिभाषित किया गया है: "डिप्रेशन टेस्ट एक नमूना में बहुविधता को मापता है, सभी नमूना बिंदुओं पर, अनुभवजन्य वितरण फ़ंक्शन के बीच, और अधिकतम अंतर को कम करने वाले यूनिमोडल वितरण फ़ंक्शन"

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

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

यहाँ जो मैं दिखाता हूं वह यह है कि डिप टेस्ट इंडेक्स अधिक है और डिस्टिब्यूशन बिमोडल होने पर पॉवल्यू कम है। जो आप इंटरनेट पर पढ़ सकते हैं इसके विपरीत है।

मैं आँकड़ों का कोई विशेषज्ञ नहीं हूँ, जिससे मैंने हर्टिगन्स के पेपर को मुश्किल से समझा। मैं सही टिप्पणी के बारे में कुछ टिप्पणियां प्राप्त करना चाहूंगा कि हमें हार्टिगन्स के डुबकी परीक्षण की व्याख्या करनी चाहिए। क्या मैं कहीं गलत हूं?

आप सभी को धन्यवाद। सादर,

प्रादेशिक सेना

वितरण सिम्युलेटेड का उदाहरण: वितरण सिम्युलेटेड का उदाहरण

हार्टिगन के डिप टेस्ट इंडेक्स से जुड़े: यहाँ छवि विवरण दर्ज करें

हार्टिगन के डिप टेस्ट p.value जुड़े: यहाँ छवि विवरण दर्ज करें

library(diptest)
library(ggplot2)


# CONSTANT PARAMETERS
sig1 <- log(3)
sig2 <- log(3)
cpct <- 0.5
N=1000

#CREATING BIMOD DISTRIBUTION
bimodalDistFunc <- function (n,cpct, mu1, mu2, sig1, sig2) {
  y0 <- rlnorm(n,mean=mu1, sd = sig1)
  y1 <- rlnorm(n,mean=mu2, sd = sig2)

  flag <- rbinom(n,size=1,prob=cpct)
  y <- y0*(1 - flag) + y1*flag 
}

#DIP TEST
DIP_TEST <- function(bimodalData) {
  TEST <- dip.test(bimodalData)
  return(TEST$statistic[[1]])   # return(TEST$p.value[[1]])    to get the p value
}
DIP_TEST(bimodalData)


# SIMULATION
exp_mu1 = 1
max_exp_mu2 = 100
intervStep = 100
repPerInt = 10

# single distibutions
expMu2Value <- c()
bimodalData <- c()
mu1 <- log(exp_mu1)   
mu2 <- log(exp_mu1)
bimodalData <- c(bimodalData,log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))
expMu2Value <- c(expMu2Value,rep(exp_mu1,length(log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))))

mu1 <- log(exp_mu1)   
mu2 <- log(max_exp_mu2)
bimodalData <- c(bimodalData,log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))
expMu2Value <- c(expMu2Value,rep(max_exp_mu2,length(log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))))

mu1 <- log(exp_mu1)   
mu2 <- log(trunc((max_exp_mu2-exp_mu1)/2+1))
bimodalData <- c(bimodalData,log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))
expMu2Value <- c(expMu2Value,rep(trunc((max_exp_mu2-exp_mu1)/2+1),length(log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2)))))

tableExamples <- data.frame(expMu2Value,bimodalData)
tableExamples$expMu2Value <- as.factor(tableExamples$expMu2Value)
ExamplePlot <- ggplot(tableExamples)+
  geom_histogram(aes(bimodalData),color='white')+
  ylab("Count")+
  xlab("")+
  facet_wrap(~expMu2Value)+
  ggtitle("Intensity of bimodularity")

# calculation of the dip test index
exp_mu2Int = seq(from=exp_mu1,to=max_exp_mu2,length.out=intervStep)
expmu2Vec = c()
dipStat = c()
testDone = c()
for(exp_mu2 in exp_mu2Int){
  mu1 <- log(exp_mu1)   
  mu2 <- log(exp_mu2)
  for(rep in 1:repPerInt){
    bimodalData <- log(bimodalDistFunc(n=N,cpct,mu1,mu2, sig1,sig2))
    diptestone = DIP_TEST(bimodalData)
    expmu2Vec = c(expmu2Vec,exp_mu2)
    dipStat = c(dipStat,diptestone)
    testDone = c(testDone,"diptest")
  }
}
table = data.frame(expmu2Vec,dipStat,testDone)

IndexPlot <- ggplot(table)+
  geom_point(aes(expmu2Vec,dipStat,color=testDone))+
  ylab("Index")+
  xlab("Intensity of Bimodularity")+
  scale_color_discrete(name="Test")

ExamplePlot
IndexPlot

3
बहुत गहन प्रश्न किसी भी विषय के बारे में काम करता है, जो किसी भी सांख्यिकीविद् के मानकों से महत्वपूर्ण है। स्पष्ट पहले प्रश्न, एक व्याख्या में आने से पहले भी , "आपको इस परीक्षण की आवश्यकता क्यों है? संवाद करने के लिए क्या जानकारी है?" प्रेरणाओं के लिए कुछ अतिरिक्त संदर्भ प्रदान कर सकते हैं जो आपको "डिप टेस्ट" से परिणामों की व्याख्या के बहुत आगे की ओर ले गए हैं? दूसरे शब्दों में, यह सुविधा आरटी प्रोग्रामिंग के अलावा, तर्क के किस मार्ग ने आपको पहले स्थान पर "डिप टेस्ट" के लिए प्रेरित किया है?
माइक हंटर

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

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

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

1
सांख्यिकीय मुद्दों पर: जैसा कि कहा गया है, डुबकी परीक्षण एक संदर्भ के रूप में एकरूपता लेता है। मुझे नहीं लगता कि इसमें से प्रस्थान को पी-मूल्य से सिर्फ मोड की संख्या के रूप में व्याख्या किया जा सकता है। मैंने पाया है कि घनत्व के अनुमान और ठोस व्याख्या के संयोजन के साथ मोड की संख्या की व्याख्या करने के लिए यह बहुत अधिक उपयोगी है।
निक कॉक्स

जवाबों:


6

मिस्टर फ्रीमैन ( मैंने आपके बारे में जो कागज़ात के बारे में बताया था) के लेखक ने मुझे बताया कि वह वास्तव में केवल डिप टेस्ट के अंतराल को देख रहा था। यह भ्रम उनके वाक्य से आता है:
"एचडीएस मान 0 से 1 तक होता है, जो .05 से कम मूल्यों के साथ होता है, जो महत्वपूर्ण जैव-विविधता को दर्शाता है, और .05 से अधिक, लेकिन 10 से भी कम मूल्यों को मामूली महत्व के साथ जैव-विविधता का सुझाव देता है" । HDS मान Pvalue से मेल खाता है, न कि डिप टेस्ट के आँकड़ों से। यह कागज में स्पष्ट नहीं था।

मेरा विश्लेषण अच्छा है: डिंपल परीक्षण के आंकड़े बढ़ जाते हैं जब वितरण एक असमान वितरण से विचलित होता है।

Bimodality परीक्षण और सिल्वरमैन के परीक्षण को R में आसानी से गणना की जा सकती है और काम को अच्छी तरह से किया जा सकता है।


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