คำนวณและแสดงภาพการแจกแจงแกมมาจากพารามิเตอร์รูปร่างและขนาดที่ผู้ใช้กำหนด จำเป็นสำหรับการวิเคราะห์ทางสถิติ ทฤษฎีความน่าจะเป็น และการใช้งานทางวิทยาศาสตร์ต่างๆ
การแจกแจงแกมมาเป็นการแจกแจงความน่าจะเป็นแบบต่อเนื่องที่ใช้กันอย่างแพร่หลายในหลายสาขาของวิทยาศาสตร์ วิศวกรรม และการเงิน มันมีลักษณะโดยพารามิเตอร์สองตัว: พารามิเตอร์รูปแบบ (k หรือ α) และพารามิเตอร์ขนาด (θ หรือ β) เครื่องคิดเลขนี้ช่วยให้คุณสามารถคำนวณคุณสมบัติต่างๆ ของการแจกแจงแกมมาตามพารามิเตอร์ที่ป้อนเข้า
ฟังก์ชันความหนาแน่นของความน่าจะเป็น (PDF) ของการแจกแจงแกมมามีให้โดย:
โดยที่:
ฟังก์ชันการแจกแจงสะสม (CDF) คือ:
โดยที่ γ(k, x/θ) คือ ฟังก์ชันแกมมาที่ไม่สมบูรณ์ส่วนล่าง
คุณสมบัติหลักของการแจกแจงแกมมาประกอบด้วย:
เครื่องคิดเลขใช้สูตรที่กล่าวถึงข้างต้นในการคำนวณคุณสมบัติต่างๆ ของการแจกแจงแกมมา นี่คือคำอธิบายทีละขั้นตอน:
เมื่อทำการคำนวณการแจกแจงแกมมา ควรพิจารณาเชิงตัวเลขหลายประการ:
การแจกแจงแกมมามีการใช้งานมากมายในหลายสาขา:
แม้ว่า การแจกแจงแกมมาจะมีความหลากหลาย แต่ก็มีการแจกแจงที่เกี่ยวข้องซึ่งอาจเหมาะสมกว่าในบางสถานการณ์:
เมื่อทำงานกับข้อมูลในโลกแห่งความเป็นจริง มักจำเป็นต้องประมาณพารามิเตอร์ของการแจกแจงแกมมา วิธีการที่ใช้กันทั่วไป ได้แก่:
การแจกแจงแกมมายังสามารถใช้ในการทดสอบสมมติฐานต่างๆ รวมถึง:
การแจกแจงแกมมามีประวัติศาสตร์ที่ร่ำรวยในด้านคณิตศาสตร์และสถิติ:
นี่คือตัวอย่างโค้ดในการคำนวณคุณสมบัติของการแจกแจงแกมมา:
1' ฟังก์ชัน Excel VBA สำหรับ PDF การแจกแจงแกมมา
2Function GammaPDF(x As Double, k As Double, theta As Double) As Double
3 If x <= 0 Or k <= 0 Or theta <= 0 Then
4 GammaPDF = CVErr(xlErrValue)
5 Else
6 GammaPDF = (x ^ (k - 1) * Exp(-x / theta)) / (WorksheetFunction.Gamma(k) * theta ^ k)
7 End If
8End Function
9' การใช้งาน:
10' =GammaPDF(2, 3, 1)
11
1import numpy as np
2import matplotlib.pyplot as plt
3from scipy.stats import gamma
4
5def plot_gamma_distribution(k, theta):
6 x = np.linspace(0, 20, 1000)
7 y = gamma.pdf(x, a=k, scale=theta)
8
9 plt.figure(figsize=(10, 6))
10 plt.plot(x, y, 'b-', lw=2, label='PDF')
11 plt.title(f'การแจกแจงแกมมา (k={k}, θ={theta})')
12 plt.xlabel('x')
13 plt.ylabel('ความหนาแน่นของความน่าจะเป็น')
14 plt.legend()
15 plt.grid(True)
16 plt.show()
17
18## การใช้งานตัวอย่าง:
19k, theta = 2, 2
20plot_gamma_distribution(k, theta)
21
22## คำนวณคุณสมบัติ
23mean = k * theta
24variance = k * theta**2
25skewness = 2 / np.sqrt(k)
26kurtosis = 3 + 6 / k
27
28print(f"ค่าเฉลี่ย: {mean}")
29print(f"ความแปรปรวน: {variance}")
30print(f"ความเบี้ยว: {skewness}")
31print(f"ความสูง: {kurtosis}")
32
1function gammaFunction(n) {
2 if (n === 1) return 1;
3 if (n === 0.5) return Math.sqrt(Math.PI);
4 return (n - 1) * gammaFunction(n - 1);
5}
6
7function gammaPDF(x, k, theta) {
8 if (x <= 0 || k <= 0 || theta <= 0) return NaN;
9 return (Math.pow(x, k - 1) * Math.exp(-x / theta)) / (Math.pow(theta, k) * gammaFunction(k));
10}
11
12function calculateGammaProperties(k, theta) {
13 const mean = k * theta;
14 const variance = k * Math.pow(theta, 2);
15 const skewness = 2 / Math.sqrt(k);
16 const kurtosis = 3 + 6 / k;
17
18 console.log(`ค่าเฉลี่ย: ${mean}`);
19 console.log(`ความแปรปรวน: ${variance}`);
20 console.log(`ความเบี้ยว: ${skewness}`);
21 console.log(`ความสูง: ${kurtosis}`);
22}
23
24// การใช้งานตัวอย่าง:
25const k = 2, theta = 2;
26calculateGammaProperties(k, theta);
27
28// วาด PDF (โดยใช้ไลบรารีการวาดภาพที่สมมติขึ้น)
29const xValues = Array.from({length: 100}, (_, i) => i * 0.2);
30const yValues = xValues.map(x => gammaPDF(x, k, theta));
31// plotLine(xValues, yValues);
32
ตัวอย่างเหล่านี้แสดงให้เห็นถึงวิธีการคำนวณคุณสมบัติของการแจกแจงแกมมาและการแสดงภาพฟังก์ชันความหนาแน่นของความน่าจะเป็นโดยใช้ภาษาโปรแกรมต่างๆ คุณสามารถปรับฟังก์ชันเหล่านี้ให้เหมาะสมกับความต้องการเฉพาะของคุณหรือรวมเข้ากับระบบการวิเคราะห์ทางสถิติขนาดใหญ่
ค้นพบเครื่องมือเพิ่มเติมที่อาจมีประโยชน์สำหรับการทำงานของคุณ