यदि मेरा डेटा सामान्य वितरण में फिट बैठता है तो कैसे जांचें?


11

Rअगर मेरा डेटा लॉग-नॉर्मल या पेरेटो डिस्ट्रीब्यूशन में फिट बैठता है , तो मैं जांचना चाहता हूं । ऐसा कैसे किया जा सकता था? शायद ks.testमुझे ऐसा करने में मदद मिल सकती है, लेकिन मैं अपने डेटा के लिए Pareto वितरण के लिए the और पैरामीटर कैसे प्राप्त कर सकता हूं ?αk


अंतिम प्रश्न के लिए यह भी देखें आँकड़े ।stackexchange.com
kjetil b halvorsen

जवाबों:


6

... मैंने देखा है कि आपके पास 'प्रतिगमन' टैग है। यदि आपके पास एक प्रतिगमन समस्या है, तो आप वितरण के आकार का आकलन करने के लिए प्रतिक्रिया के अनिवारी वितरण को नहीं देख सकते हैं, क्योंकि यह एक्स के पैटर्न पर निर्भर करता है। यदि आप जाँचने के बारे में पूछ रहे हैं कि क्या प्रतिक्रिया (y) चर किसी प्रकार के प्रतिगमन या GLM में लॉगऑनॉर्मल या पेरेटो वितरण है, जहां अवलोकन के दौरान साधन भिन्न हैं, तो यह एक बहुत ही अलग प्रश्न है (लेकिन मूल रूप से इसी तरह के विश्लेषण के लिए नीचे आता है। अवशिष्टों पर)। क्या आप स्पष्ट कर सकते हैं कि क्या यह एक प्रतिगमन समस्या है। मेरा जवाब, वर्तमान में, एकतरफा lognormal या परेतो का आकलन करने से संबंधित है

आपके कुछ अलग सवाल हैं।

यदि मेरा डेटा सामान्य वितरण में फिट बैठता है तो कैसे जांचें?

लॉग लें और एक सामान्य QQ प्लॉट करें। देखें और देखें कि वितरण आपके उद्देश्यों के लिए पर्याप्त है या नहीं।

अगर मेरा डेटा लॉग-नॉर्मल या पेरेटो डिस्ट्रीब्यूशन में फिट बैठता है, तो मैं आर में जांच करना चाहता हूं

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

इस तरह के परीक्षण वास्तव में मॉडल चयन के लिए एक उपयोगी आधार नहीं हैं।

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

शायद ks.test मुझे ऐसा करने में मदद कर सकता है

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

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

नीचे एक उदाहरण देखें

मैं अपने डेटा के लिए pareto वितरण के लिए अल्फा और k पैरामीटर कैसे प्राप्त कर सकता हूं?

यदि आपको मापदंडों का अनुमान लगाने की आवश्यकता है, तो MLE का उपयोग करें ... लेकिन Pareto और lognormal के बीच निर्णय लेने के लिए ऐसा न करें।

क्या आप बता सकते हैं कि इनमें से कौन सा लॉगऑनॉर्मल है और कौन सा पारेटो है?

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

ध्यान दें कि सामान्य QQ भूखंडों (बाएं स्तंभ) के साथ हम देखते हैं कि डेटा सेट 1 के लॉग एक काफी सीधी रेखा देता है, जबकि डेटा सेट 2 सही तिरछा दिखाता है। घातीय भूखंडों के साथ, डेटा सेट 1 के लॉग घातीय की तुलना में एक हल्की दाहिनी पूंछ दिखाते हैं, जबकि डेटा सेट 2 एक काफी सीधी रेखा दिखाता है (सही पूंछ में मान मॉडल के सही होने पर भी थोड़ा सा झूलते हैं; हेवी-टेल्स के साथ असामान्य नहीं है; यह एक कारण है कि आपको समान आकार के कई नमूनों की साजिश रचने की ज़रूरत है, जिसे आप देख रहे हैं कि प्लॉट आमतौर पर क्या दिखते हैं)

कोड उन चार भूखंडों का उपयोग करता था:

qqnorm(log(y1))
qqnorm(log(y2))
qex <- function(x) qexp((rank(x)-.375)/(length(x)+.25))
plot(qex(y1),log(y1))
plot(qex(y2),log(y2))

यदि आपके पास एक प्रतिगमन प्रकार की समस्या है - एक जहां अन्य चर के साथ साधन बदलते हैं, तो आप वास्तव में केवल माध्य के लिए उपयुक्त मॉडल की उपस्थिति में या तो वितरणात्मक धारणा की उपयुक्तता का आकलन कर सकते हैं।


3

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

rm(list=ls())

set.seed(123)
x = rlnorm(100,0,1)

hist(x)

# Loglikelihood and AIC for lognormal model

ll1 = function(param){
if(param[2]>0) return(-sum(dlnorm(x,param[1],param[2],log=T)))
else return(Inf)
}

AIC1 = 2*optim(c(0,1),ll1)$value + 2*2

# Loglikelihood and AIC for Pareto model

dpareto=function(x, shape=1, location=1) shape * location^shape / x^(shape + 1)

ll2 = function(param){
if(param[1]>0 & min(x)> param[2]) return(-sum(log(dpareto(x,param[1],param[2]))))
else return(Inf)
}


AIC2 = 2*optim(c(1,0.01),ll2)$value + 2*2

# Comparison using AIC, which in this case favours the lognormal model.

 c(AIC1,AIC2)

1

हो सकता है कि फ़िटडिस्ट ()?

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

require(MASS)
hist(x, freq=F)
fit<-fitdistr(x,"log-normal")$estimate
lines(dlnorm(0:max(x),fit[1],fit[2]), lwd=3)


> fit
meanlog     sdlog 
3.8181643 0.1871289 



> dput(x)
c(52.6866903145324, 39.7511298620398, 50.0577071855833, 33.8671245370402, 
51.6325665911116, 41.1745418750494, 48.4259060939127, 67.0893697776377, 
35.5355051232044, 44.6197404834786, 40.5620805256951, 39.4265590077884, 
36.0718655240496, 56.0205581625823, 52.8039852992611, 46.2069383488226, 
36.7324212941395, 44.7998046213554, 47.9727885542368, 36.3400338997286, 
32.7514839453244, 50.6878893947656, 53.3756089181472, 39.4769689441593, 
38.5432770167907, 62.350999487007, 44.5140171935881, 47.4026606915147, 
57.3723511479393, 64.4041641945078, 51.2286815562554, 60.4921839777139, 
71.6127652225805, 40.6395409719693, 48.681036613906, 52.3489622656967, 
46.6219563536878, 55.6136160469819, 62.3003761050482, 42.7865905767138, 
50.2413659137295, 45.6327941365187, 46.5621907725798, 48.9734785224035, 
40.4828649022511, 59.4982559591637, 42.9450436744074, 66.8393386407167, 
40.7248473206552, 45.9114242834839, 34.2671010054407, 45.7569869970351, 
50.4358523486278, 44.7445606782492, 44.4173298921541, 41.7506552050873, 
34.5657344132409, 47.7099864540652, 38.1680974794929, 42.2126680994737, 
35.690599714042, 37.6748157160789, 35.0840798650981, 41.4775827114607, 
36.6503753230464, 42.7539062488003, 39.2210050689652, 45.9364763482558, 
35.3687017955285, 62.8299659875044, 38.1532612008011, 39.9183076516292, 
59.0662388169057, 47.9032427690417, 42.4419580084314, 45.785859495192, 
59.5254284342724, 47.9161476636566, 32.6868959277799, 30.1039453246766, 
37.7606323857655, 35.754797368422, 35.5239777126187, 43.7874313667592, 
53.0328404605954, 37.4550326357314, 42.7226751172495, 44.898430515261, 
59.7229655935187, 41.0701258705001, 42.1672231656919, 60.9632847841197, 
60.3690132883734, 45.6469334940722, 39.8300067022836, 51.8185235060234, 
44.908828102875, 50.8200011497451, 53.7945569828737, 65.0432670527801, 
49.0306734716282, 35.9442821219144, 46.8133296904456, 43.7514416949611, 
43.7348972849838, 57.592040060118, 48.7913517211383, 38.5555058596449
)

1
हालांकि यह समाधान डेटा के लिए एक लॉगऑनॉर्मल फिट बैठता है, लेकिन यह नहीं बताता है कि फिट कोई अच्छा है या नहीं, क्या एक पेरेटो एक बेहतर विकल्प है।
whuber
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.