लेप्टोकोर्टिक वितरण को सामान्यता में कैसे बदलें?


12

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

मैंने कई प्रकार के परिवर्तनों की कोशिश की है (बहुत कुछ जो मैंने पहले देखा है, जिसमें , आदि) शामिल हैं, लेकिन उनमें से कोई भी विशेष रूप से अच्छी तरह से काम नहीं करता है। क्या लेप्टोकोर्टिक वितरण को और अधिक सामान्य बनाने के लिए प्रसिद्ध परिवर्तन हैं?1X,X,asinh(X)

नीचे सामान्य QQ प्लॉट का उदाहरण देखें:

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


5
क्या आप संभावना अभिन्न परिवर्तन से परिचित हैं ? इस साइट पर कुछ थ्रेड्स में इसे लागू किया गया है , अगर आप इसे कार्रवाई में देखना चाहेंगे।
whuber

8
आपको कुछ ऐसा चाहिए जो साइन का सम्मान करते हुए सममित रूप से (चर "मध्य") काम करे। कुछ भी नहीं है कि आप की कोशिश की अगर आप एक "बीच" नहीं है करीब आता है। "मध्य" के लिए माध्यिका का उपयोग करें और संकेत के रूप में घनमूल को लागू करने के लिए याद करते हुए विचलन की घनमूल को आज़माएं (।) * Abs (?) ^ (1/3)। कोई गारंटी नहीं और बहुत तदर्थ, लेकिन इसे सही दिशा में धकेलना चाहिए।
निक कॉक्स

1
उह, आप उस प्लैटिकुरेटिक को क्या कहते हैं? जब तक मैं कुछ याद नहीं किया, ऐसा लगता है कि यह सामान्य से अधिक कुर्तोसिस मिला है।
Glen_b -Reinstate Monica

3
@Glen_b मुझे लगता है कि सही है: यह लेप्टोकोर्टिक है। लेकिन ये दोनों शब्द बहुत मूर्खतापूर्ण हैं, सिवाय इसके कि अभी तक वे बायोमेट्रिक में छात्र द्वारा मूल कार्टून के संदर्भ में अनुमति देते हैं । कसौटी है कर्टोसिस; मान उच्च या निम्न या (और भी बेहतर) परिमाणित हैं।
निक कॉक्स

3
लेप्टोकोर्टिक को 'पतली पूंछ' के रूप में क्यों वर्णित किया गया है? जबकि पूंछ और कुर्तोसिस की मोटाई के बीच कोई आवश्यक संबंध नहीं है, सामान्य प्रवृत्ति से जुड़ी होने वाली भारी पूंछ के लिए है (उदाहरण के लिए साथ, मानकीकृत घनत्व के लिए)t6
Glen_b -Reinstone Monica

जवाबों:


12

लेप्टोकोर्टिक डेटा का वर्णन करने और बदलने के लिए मैं भारी पूंछ लैंबर्ट डब्ल्यू एक्स एफ वितरण का उपयोग करता हूं। अधिक विवरण और संदर्भ के लिए निम्नलिखित पोस्ट देखें (मेरे):

यहाँ LambertW R पैकेज का उपयोग कर एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण है ।

library(LambertW)
set.seed(1)
theta.tmp <- list(beta = c(2000, 400), delta = 0.2)
yy <- rLambertW(n = 100, distname = "normal", 
                theta = theta.tmp)

test_norm(yy)

मूल डेटा की सामान्यता का परीक्षण करें

## $seed
## [1] 267509
## 
## $shapiro.wilk
## 
##  Shapiro-Wilk normality test
## 
## data:  data.test
## W = 1, p-value = 0.008
## 
## 
## $shapiro.francia
## 
## 	Shapiro-Francia normality test
## 
## data:  data.test
## W = 1, p-value = 0.003
## 
## 
## $anderson.darling
## 
##  Anderson-Darling normality test
## 
## data:  data
## A = 1, p-value = 0.01

की qqplot yyमूल पोस्ट में बहुत अपने qqplot के करीब है और डेटा वास्तव में इसलिए आपके डेटा में अच्छी तरह से एक लैम्बर्ट डब्ल्यू द्वारा वर्णित किया जा सकता उसे 5 के कुकुदता के साथ थोड़ा leptokurtic है इनपुट के साथ गाऊसी वितरण और का एक टेल पैरामीटर (जिसका तात्पर्य है कि ऑर्डर करने के लिए केवल कुछ क्षणों में मौजूद है)।एक्स ~ एन ( 2000 , 400 ) δ = 0.2 5×XN(2000,400)δ=0.25

अब अपने प्रश्न पर वापस जाएं: इस लेप्टोकर्टिक डेटा को फिर से सामान्य कैसे बनाया जाए? खैर, हम MLE का उपयोग करके वितरण के मापदंडों का अनुमान लगा सकते हैं (या क्षणों के उपयोग के तरीकों के लिए IGMM()),

mod.Lh <- MLE_LambertW(yy, distname = "normal", type = "h")
summary(mod.Lh)

## Call: MLE_LambertW(y = yy, distname = "normal", type = "h")
## Estimation method: MLE
## Input distribution: normal
## 
##  Parameter estimates:
##        Estimate  Std. Error  t value Pr(>|t|)    
## mu     2.05e+03    4.03e+01    50.88   <2e-16 ***
## sigma  3.64e+02    4.36e+01     8.37   <2e-16 ***
## delta  1.64e-01    7.84e-02     2.09    0.037 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## -------------------------------------------------------------- 
## 
## Given these input parameter estimates the moments of the output random variable are 
##   (assuming Gaussian input): 
##  mu_y = 2052; sigma_y = 491; skewness = 0; kurtosis = 13.

और उसके बाद का उपयोग द्विभाजित उलटा परिवर्तन (के आधार पर W_delta()इनपुट करने के लिए डेटा backtransform करने के लिए) डिजाइन द्वारा - - बहुत एक सामान्य के करीब होना चाहिए, जो।X

# get_input() handles does the right transformations automatically based on
# estimates in mod.Lh
xx <- get_input(mod.Lh)
test_norm(xx)

गाऊसीकृत डेटा की परीक्षण सामान्यता

## $seed
## [1] 218646
## 
## $shapiro.wilk
## 
##  Shapiro-Wilk normality test
## 
## data:  data.test
## W = 1, p-value = 1
## 
## 
## $shapiro.francia
## 
## 	Shapiro-Francia normality test
## 
## data:  data.test
## W = 1, p-value = 1
## 
## 
## $anderson.darling
## 
##  Anderson-Darling normality test
## 
## data:  data
## A = 0.1, p-value = 1

देखा!


मैं एक प्रशंसक हूं, और अजगर के लिए संस्करण की तरह एक scikit-learn पर काम शुरू किया है: github.com/gregversteeg/gaussianize
ग्रेग वेर स्टिग

आपके लिए ट्रांसफॉर्मेशन कैसे काम करता है, इसकी अधिक सहज व्याख्या प्रदान करना जॉर्ज के लिए संभव है?
azuric

Z=Uexp(δ/2U2)Uδ>0Z

9

sign(.)abs(.)13Ymedian(Y)

यद्यपि घनमूल परिवर्तन अच्छी तरह से काम नहीं करता था, लेकिन यह वर्गमूल और अधिक अस्पष्ट तीन-चौथाई मूल काम को अच्छी तरह से करता है।

मूल प्रश्न में लेप्टोकोर्टिक चर के QQ प्लॉट के मूल कर्नेल घनत्व प्लॉट यहां था:

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


विचलन में वर्गमूल परिवर्तन लागू करने के बाद, QQ प्लॉट इस तरह दिखता है:

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

बेहतर है, लेकिन यह करीब हो सकता है।


कुछ और हैमरिंग, विचलन को तीन-चौथाई मूल परिवर्तन लागू करना:

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


और इस रूपांतरित चर का अंतिम कर्नेल घनत्व इस तरह दिखता है:

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

मेरे करीब लगती है।


8

कई मामलों में, कोई सरल-रूप मोनोटोनिक परिवर्तन नहीं हो सकता है जो एक करीब-सामान्य परिणाम उत्पन्न करेगा।

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

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

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

यदि आप हमें डेटा तक पहुंच प्रदान कर सकते हैं, तो यह अच्छी तरह से हो सकता है कि हम या तो एक परिवर्तन कर सकते हैं जो ठीक है - या हम आपको दिखा सकते हैं कि आपको एक क्यों नहीं मिलेगा।

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

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

वास्तव में यहाँ तुम्हारा और मेरा सुपरिम्पोजड हैं:

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


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