R - การแจกแจงปกติ

ในการรวบรวมข้อมูลแบบสุ่มจากแหล่งข้อมูลอิสระโดยทั่วไปจะสังเกตได้ว่าการกระจายของข้อมูลเป็นเรื่องปกติ ซึ่งหมายความว่าในการพล็อตกราฟด้วยค่าของตัวแปรในแกนนอนและจำนวนค่าในแกนแนวตั้งเราจะได้เส้นโค้งรูประฆัง จุดศูนย์กลางของเส้นโค้งแสดงถึงค่าเฉลี่ยของชุดข้อมูล ในกราฟห้าสิบเปอร์เซ็นต์ของค่าจะอยู่ทางด้านซ้ายของค่าเฉลี่ยและอีก 50 เปอร์เซ็นต์อยู่ทางด้านขวาของกราฟ สิ่งนี้เรียกว่าการแจกแจงปกติในสถิติ

R มีฟังก์ชันในตัวสี่ฟังก์ชันเพื่อสร้างการแจกแจงแบบปกติ มีอธิบายไว้ด้านล่าง

dnorm(x, mean, sd)
pnorm(x, mean, sd)
qnorm(p, mean, sd)
rnorm(n, mean, sd)

ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์ที่ใช้ในฟังก์ชันข้างต้น -

  • x เป็นเวกเตอร์ของตัวเลข

  • p คือเวกเตอร์ของความน่าจะเป็น

  • n คือจำนวนการสังเกต (ขนาดตัวอย่าง)

  • meanคือค่าเฉลี่ยของข้อมูลตัวอย่าง ค่าเริ่มต้นคือศูนย์

  • sdคือค่าเบี่ยงเบนมาตรฐาน ค่าเริ่มต้นคือ 1

dnorm ()

ฟังก์ชันนี้ให้ความสูงของการแจกแจงความน่าจะเป็นในแต่ละจุดสำหรับค่าเฉลี่ยและส่วนเบี่ยงเบนมาตรฐานที่กำหนด

# Create a sequence of numbers between -10 and 10 incrementing by 0.1.
x <- seq(-10, 10, by = .1)

# Choose the mean as 2.5 and standard deviation as 0.5.
y <- dnorm(x, mean = 2.5, sd = 0.5)

# Give the chart file a name.
png(file = "dnorm.png")

plot(x,y)

# Save the file.
dev.off()

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

pnorm ()

ฟังก์ชันนี้ให้ความน่าจะเป็นของจำนวนสุ่มที่กระจายตามปกติน้อยกว่าค่าของตัวเลขที่กำหนด เรียกอีกอย่างว่า "ฟังก์ชันการกระจายสะสม"

# Create a sequence of numbers between -10 and 10 incrementing by 0.2.
x <- seq(-10,10,by = .2)
 
# Choose the mean as 2.5 and standard deviation as 2. 
y <- pnorm(x, mean = 2.5, sd = 2)

# Give the chart file a name.
png(file = "pnorm.png")

# Plot the graph.
plot(x,y)

# Save the file.
dev.off()

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

qnorm ()

ฟังก์ชันนี้รับค่าความน่าจะเป็นและให้ตัวเลขที่มีค่าสะสมตรงกับค่าความน่าจะเป็น

# Create a sequence of probability values incrementing by 0.02.
x <- seq(0, 1, by = 0.02)

# Choose the mean as 2 and standard deviation as 3.
y <- qnorm(x, mean = 2, sd = 1)

# Give the chart file a name.
png(file = "qnorm.png")

# Plot the graph.
plot(x,y)

# Save the file.
dev.off()

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

rnorm ()

ฟังก์ชันนี้ใช้เพื่อสร้างตัวเลขสุ่มที่มีการแจกแจงเป็นปกติ ใช้ขนาดตัวอย่างเป็นอินพุตและสร้างตัวเลขสุ่มจำนวนมาก เราวาดฮิสโตแกรมเพื่อแสดงการแจกแจงของตัวเลขที่สร้างขึ้น

# Create a sample of 50 numbers which are normally distributed.
y <- rnorm(50)

# Give the chart file a name.
png(file = "rnorm.png")

# Plot the histogram for this sample.
hist(y, main = "Normal DIstribution")

# Save the file.
dev.off()

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -