सेंट्रोइड के चारों ओर 2 डी फैलाव की मात्रा को चिह्नित करने के लिए, आप बस (रूट) का मतलब चुकता दूरी चाहते हैं,
σ^= आरएमएस =1nΣमैं( (एक्समैं-एक्स¯)2+ (yमैं-y¯)2)-----------------------√।
इस सूत्र में, बिंदु निर्देशांक हैं और उनका केंद्रक (औसत बिंदु)(एक्समैं,yमैं) , i = 1 , 2 , … , n(एक्स¯,y¯) का है ।
प्रश्न दूरियों के वितरण के लिए पूछता है । जब गेंदों में एक आइसोट्रोपिक बाइवेरिएट होता है, तो उनके केंद्रक के चारों ओर सामान्य वितरण होता है - जो एक मानक और शारीरिक रूप से उचित धारणा है - चौकोर दूरी चि-स्क्वैर्ड वितरण के साथ आनुपातिक दो डिग्री (प्रत्येक समन्वय के लिए एक) है। यह स्वतंत्र मानक सामान्य चर के वर्गों के योग के रूप में ची-चुकता वितरण की एक परिभाषा का प्रत्यक्ष परिणाम है, क्योंकि स्वतंत्र सामान्य का एक रैखिक संयोजन है, जिसमें प्रत्याशा का सामान्य रूप लिखना
एक्समैं-एक्स¯=एन - 1nएक्समैं-Σजे ≠ मैं1nएक्सजे
ई [एक्समैं-एक्स¯] =एन - 1nई [एक्समैं] -Σजे ≠ मैं1nई [एक्सजे] = ०।
एक्समैंas , अनिसोट्रॉपी की धारणा यह है कि का के समान वितरण है और वे स्वतंत्र हैं, इसलिए एक समान परिणाम के वितरण के लिए है । यह आनुपातिकता की निरंतरता को स्थापित करता है:
दूरियों के वर्गों में स्वतंत्रता की दो डिग्री के साथ ची-चुकता वितरण होता है, जिसे द्वारा बढ़ाया जाता है ।σ2ई [(एक्समैं-एक्स¯)2] = वार (एक्समैं-एक्स¯) =(एन - 1n)2वार (एक्समैं) +Σजे ≠ मैं(1n)2वार (एक्सजे) =एन - 1nσ2।
yजेxi(yj−y¯)2n−1nσ2
इन समीकरणों का सबसे गंभीर परीक्षण मामला , तब के लिए अंश से सबसे भिन्न होता है । प्रयोग का अनुकरण करके, और दोनों के लिए , और स्केल किए गए ची-स्क्वेर्ड डिस्ट्रीब्यूशन (लाल रंग में) के साथ वर्ग दूरी के हिस्टोग्राम को ओवरप्लेट करके, हम इस सिद्धांत को सत्यापित कर सकते हैं।n=2n−1n1n=2n=40
प्रत्येक पंक्ति समान डेटा दिखाती है: बाईं ओर एक्स-एक्सिस लॉगरिदमिक है; दाईं ओर यह वास्तविक वर्ग दूरी दिखाता है। इन सिमुलेशन के लिए का सही मूल्य सेट किया गया था ।σ1
ये परिणाम साथ 100,000 पुनरावृत्तियों और साथ 50,000 पुनरावृत्तियों के लिए हैं । हिस्टोग्राम और ची-स्क्वेर्ड डेंसिटी के बीच समझौते उत्कृष्ट हैं।n=2n=40
हालाँकि अज्ञात है, इसका विभिन्न तरीकों से अनुमान लगाया जा सकता है। उदाहरण के लिए, मतलब चुकता की दूरी होनी चाहिए बार मतलब , जो । साथ , उदाहरण के लिए, अनुमान के रूप में बार मतलब वर्ग दूरी। इस प्रकार के एक अनुमान होगा बार आरएमएस दूरी। तब हम कह सकते हैं कि वितरण के मूल्यों का उपयोग करना :σ2n−1nσ2χ222n=40σ24039/2σ40/78−−−−−√χ22
लगभग 39% दूरी से कम होगी , क्योंकि 39% a वितरण से कम है ।39/40−−−−−√σ^χ221
लगभग 78% दूरी बार , क्योंकि 78% a वितरण से कम है ।3–√39/40−−−−−√σ^χ223
और इसी तरह, किसी भी एक के लिए आप या स्थान पर उपयोग करने की परवाह करते हैं । एक जांच के रूप में, पहले से प्लॉट किए गए के सिमुलेशन में, गुना से कम का वास्तविक अनुपात था13n=401,2,…,10n−1nσ^2
0.3932 0.6320 0.7767 0.8647 0.9178 0.9504 0.9700 0.9818 0.9890 0.9933
सैद्धांतिक अनुपात हैं
0.3935 0.6321 0.7769 0.8647 0.9179 0.9502 0.9698 0.9817 0.9889 0.9933
समझौता उत्कृष्ट है।
यहां R
सिमुलेशन का संचालन और विश्लेषण करने के लिए कोड है।
f <- function(n, n.iter, x.min=0, x.max=Inf, plot=TRUE) {
#
# Generate `n.iter` experiments in which `n` locations are generated using
# standard normal variates for their coordinates.
#
xy <- array(rnorm(n*2*n.iter), c(n.iter,2,n))
#
# Compute the squared distances to the centers for each experiment.
#
xy.center <- apply(xy, c(1,2), mean)
xy.distances2 <- apply(xy-array(xy.center, c(n.iter,2,n)), c(1,3),
function(z) sum(z^2))
#
# Optionally plot histograms.
#
if(plot) {
xy.plot <- xy.distances2[xy.distances2 >= x.min & xy.distances2 <= x.max]
hist(log(xy.plot), prob=TRUE, breaks=30,
main=paste("Histogram of log squared distance, n=", n),
xlab="Log squared distance")
curve(dchisq(n/(n-1) * exp(x), df=2) * exp(x) * n/(n-1),
from=log(min(xy.plot)), to=log(max(xy.plot)),
n=513, add=TRUE, col="Red", lwd=2)
hist(xy.plot, prob=TRUE, breaks=30,
main=paste("Histogram of squared distance, n=", n),
xlab="Squared distance")
curve(n/(n-1) * dchisq(n/(n-1) * x, df=2),
from=min(xy.plot), to=max(xy.plot),
n=513, add=TRUE, col="Red", lwd=2)
}
return(xy.distances2)
}
#
# Plot the histograms and compare to scaled chi-squared distributions.
#
par(mfrow=c(2,2))
set.seed(17)
xy.distances2 <- f(2, 10^5, exp(-6), 6)
xy.distances2 <- f(n <- 40, n.iter <- 50000, exp(-6), 12)
#
# Compare the last simulation to cumulative chi-squared distributions.
#
sigma.hat <- sqrt((n / (2*(n-1)) * mean(xy.distances2)))
print(cumsum(tabulate(cut(xy.distances2,
(0:10) * (n-1)/n * sigma.hat^2))) / (n*n.iter), digits=4)
print(pchisq(1:10, df=2), digits=4)