Cara membuat plot qq dengan python
Plot QQ , kependekan dari “quantile-quantile”, sering digunakan untuk mengevaluasi apakah suatu kumpulan data berpotensi berasal dari distribusi teoretis atau tidak.
Dalam kebanyakan kasus, jenis plot ini digunakan untuk menentukan apakah suatu kumpulan data mengikuti distribusi normal atau tidak.
Tutorial ini menjelaskan cara membuat plot QQ untuk kumpulan data dengan Python.
Contoh: plot QQ dengan Python
Misalkan kita memiliki kumpulan data berikut yang berisi 100 nilai:
import numpy as np #create dataset with 100 values that follows a normal distribution np.random.seed(0) data = np.random.normal(0,1, 1000) #view first 10 values data[:10] array([ 1.76405235, 0.40015721, 0.97873798, 2.2408932 , 1.86755799, -0.97727788, 0.95008842, -0.15135721, -0.10321885, 0.4105985 ])
Untuk membuat plot QQ untuk dataset ini, kita dapat menggunakan fungsi qqplot() dari perpustakaan statsmodels:
import statsmodels.api as sm import matplotlib.pyplot as plt #create QQ plot with 45-degree line added to plot fig = sm.qqplot(data, line='45') plt.show()
Dalam plot QQ, sumbu x menampilkan kuantil teoretis . Artinya, ini tidak menampilkan data Anda yang sebenarnya, melainkan menunjukkan di mana data Anda akan berada jika didistribusikan secara normal.
Sumbu Y menampilkan data Anda saat ini . Artinya jika nilai data mengikuti garis kira-kira lurus dengan sudut 45 derajat, maka data tersebut berdistribusi normal.
Dapat kita lihat pada plot QQ di atas bahwa nilai datanya cenderung mengikuti 45 derajat, artinya kemungkinan besar datanya berdistribusi normal. Hal ini tidak mengherankan karena kami menghasilkan 100 nilai data menggunakan fungsi numpy.random.normal() .
Sebagai gantinya, pertimbangkan jika kita membuat kumpulan data yang terdiri dari 100 nilai yang terdistribusi secara merata dan membuat plot QQ untuk kumpulan data tersebut:
#create dataset of 100 uniformly distributed values data = np.random.uniform(0,1, 1000) #generate QQ plot for the dataset fig = sm.qqplot(data, line='45') plt.show()
Nilai datanya jelas tidak mengikuti garis merah 45 derajat, menandakan tidak mengikuti sebaran normal.
Catatan tentang Plot QQ
Ingatlah catatan berikut tentang plot QQ:
- Meskipun plot QQ bukan uji statistik formal, plot ini memberikan cara sederhana untuk memeriksa secara visual apakah kumpulan data terdistribusi normal atau tidak.
- Berhati-hatilah untuk tidak mengacaukan plot QQ dengan plot PP , yang kurang umum digunakan dan kurang berguna untuk menganalisis nilai data yang berada di bagian akhir distribusi.
Anda dapat menemukan lebih banyak tutorial Python di sini .