R में dnorm, pnorm, qnorm और rnorm के लिए एक गाइड
सामान्य वितरण सांख्यिकी में सबसे अधिक उपयोग किया जाने वाला वितरण है। यह ट्यूटोरियल बताता है कि dnorm , pnorm , rnorm , और qnorm फ़ंक्शंस का उपयोग करके R में सामान्य वितरण का उपयोग कैसे करें।
भयावह
dnorm फ़ंक्शन कुछ यादृच्छिक चर x , जनसंख्या माध्य μ , और जनसंख्या मानक विचलन σ दिए गए सामान्य वितरण के संभाव्यता घनत्व फ़ंक्शन (पीडीएफ) का मान लौटाता है। Dnorm का उपयोग करने का सिंटैक्स इस प्रकार है:
dnorm(x, माध्य, sd)
निम्नलिखित कोड क्रिया में dnorm के कुछ उदाहरण प्रदर्शित करता है:
#find the value of the standard normal distribution pdf at x=0 dnorm(x=0, mean=0, sd=1) #[1]0.3989423 #by default, R uses mean=0 and sd=1 dnorm(x=0) #[1]0.3989423 #find the value of the normal distribution pdf at x=10 with mean=20 and sd=5 dnorm(x=10, mean=20, sd=5) #[1]0.01079819
आमतौर पर, सामान्य वितरण का उपयोग करके संभाव्यता के बारे में प्रश्नों को हल करने का प्रयास करते समय, आप अक्सर dnorm के बजाय pnorm का उपयोग करेंगे। हालाँकि, dnorm का एक उपयोगी अनुप्रयोग R में एक सामान्य वितरण प्लॉट बनाना है। निम्नलिखित कोड दिखाता है कि यह कैसे करना है:
#Create a sequence of 100 equally spaced numbers between -4 and 4 x <- seq(-4, 4, length=100) #create a vector of values that shows the height of the probability distribution #for each value in x y <- dnorm(x) #plot x and y as a scatterplot with connected lines (type = "l") and add #an x-axis with custom labels plot(x,y, type = "l", lwd = 2, axes = FALSE, xlab = "", ylab = "") axis(1, at = -3:3, labels = c("-3s", "-2s", "-1s", "mean", "1s", "2s", "3s"))
यह निम्नलिखित कथानक उत्पन्न करता है:
pnorm
पोनॉर्म फ़ंक्शन कुछ यादृच्छिक चर q , जनसंख्या माध्य μ और जनसंख्या मानक विचलन σ दिए गए सामान्य वितरण के संचयी घनत्व फ़ंक्शन (सीडीएफ) का मान लौटाता है। पोनॉर्म का उपयोग करने का सिंटैक्स इस प्रकार है:
पोनॉर्म (क्यू, माध्य, एसडी)
सरल शब्दों में, pnorm सामान्य वितरण में दिए गए मान x के बाईं ओर का क्षेत्र लौटाता है। यदि आप किसी दिए गए q मान के दाईं ओर के क्षेत्र में रुचि रखते हैं, तो आप बस निचला तर्क जोड़ सकते हैं । पूंछ = गलत
pnorm(q, औसत, sd, निचला.पूंछ = गलत)
निम्नलिखित उदाहरण बताते हैं कि पोनॉर्म का उपयोग करके कुछ संभाव्यता प्रश्नों को कैसे हल किया जाए।
उदाहरण 1: मान लीजिए कि एक निश्चित स्कूल में पुरुषों की ऊंचाई सामान्यतः
#find percentage of males that are taller than 74 inches in a population with #mean = 70 and sd = 2 pnorm(74, mean=70, sd=2, lower.tail=FALSE) # [1]0.02275013
इस स्कूल में, 2,275% पुरुष 74 इंच से अधिक लंबे हैं।
उदाहरण 2: मान लीजिए कि ऊदबिलाव की एक निश्चित प्रजाति का वजन आम तौर पर के मानक विचलन के साथ वितरित किया जाता है।
#find percentage of otters that weight less than 22 lbs in a population with #mean = 30 and sd = 5 pnorm(22, mean=30, sd=5) # [1]0.05479929
इस ऊदबिलाव प्रजाति के लगभग 5.4799% का वजन 22 पाउंड से कम है।
उदाहरण 3: मान लीजिए कि एक निश्चित क्षेत्र में पौधों की ऊंचाई सामान्यतः
#find percentage of plants that are less than 14 inches tall, then subtract the #percentage of plants that are less than 10 inches tall, based on a population #with mean = 13 and sd = 2 pnorm(14, mean=13, sd=2) - pnorm(10, mean=13, sd=2) # [1]0.6246553
इस क्षेत्र में लगभग 62.4655% पौधे 10 से 14 इंच लंबे हैं।
qnorm
क्यूनॉर्म फ़ंक्शन कुछ यादृच्छिक चर पी , जनसंख्या माध्य μ और जनसंख्या मानक विचलन σ दिए गए सामान्य वितरण के व्युत्क्रम संचयी घनत्व फ़ंक्शन (सीडीएफ) का मान लौटाता है। Qnorm का उपयोग करने का सिंटैक्स इस प्रकार है:
क्यूनॉर्म (पी, माध्य, एसडी)
सरल शब्दों में, आप यह पता लगाने के लिए qnorm का उपयोग कर सकते हैं कि सामान्य वितरण की pth मात्रा का Z स्कोर क्या है।
निम्नलिखित कोड क्रिया में qnorm के कुछ उदाहरण प्रदर्शित करता है:
#find the Z-score of the 99th quantile of the standard normal distribution qnorm(.99, mean=0, sd=1) #[1]2.326348 #by default, R uses mean=0 and sd=1 qnorm(.99) #[1]2.326348 #find the Z-score of the 95th quantile of the standard normal distribution qnorm(.95) #[1]1.644854 #find the Z-score of the 10th quantile of the standard normal distribution qnorm(.10) #[1]-1.281552
rnorm
rnorm फ़ंक्शन सामान्य रूप से वितरित यादृच्छिक चर का एक वेक्टर उत्पन्न करता है जिसे एक वेक्टर लंबाई n , एक जनसंख्या माध्य μ , और एक जनसंख्या मानक विचलन σ दिया जाता है। Rnorm का उपयोग करने का सिंटैक्स इस प्रकार है:
rnorm (एन, माध्य, एसडी)
निम्नलिखित कोड क्रिया में rnorm के कुछ उदाहरण प्रदर्शित करता है:
#generate a vector of 5 normally distributed random variables with mean=10 and sd=2 five <- rnorm(5, mean = 10, sd = 2) five # [1] 10.658117 8.613495 10.561760 11.123492 10.802768 #generate a vector of 1000 normally distributed random variables with mean=50 and sd=5 narrowDistribution <- rnorm(1000, mean = 50, sd = 15) #generate a vector of 1000 normally distributed random variables with mean=50 and sd=25 wideDistribution <- rnorm(1000, mean = 50, sd = 25) #generate two histograms to view these two distributions side by side, specify #50 bars in histogram and x-axis limits of -50 to 150 par(mfrow=c(1, 2)) #one row, two columns hist(narrowDistribution, breaks=50, xlim=c(-50, 150)) hist(wideDistribution, breaks=50, xlim=c(-50, 150))
यह निम्नलिखित हिस्टोग्राम उत्पन्न करता है:
ध्यान दें कि व्यापक वितरण, संकीर्ण वितरण की तुलना में कितना व्यापक है। दरअसल, हमने निर्दिष्ट किया था कि व्यापक वितरण में मानक विचलन 25 था, जबकि संकीर्ण वितरण में केवल 15 था। यह भी ध्यान दें कि दोनों हिस्टोग्राम 50 के माध्य के आसपास केंद्रित हैं।