fitter paket menyediakan kelas sederhana untuk mengidentifikasi distribusi dari mana sampel data dihasilkan. Ini menggunakan 80 distribusi dari Scipy dan memungkinkan Anda memplot hasil untuk memeriksa distribusi apa yang paling mungkin dan parameter terbaik
Jadi pada dasarnya prosedur uji kecocokan iteratif yang sama seperti yang dijelaskan dalam jawaban lain, tetapi dengan mudah dijalankan oleh modul
Hasil untuk seri SR_y_ Anda
Kode
from sklearn.datasets import load_diabetes from fitter import Fitter, get_common_distributions #Get Data - from question data = load_diabetes() X, y_ = data.data, data.target #Organize Data - from question SR_y = pd.Series(y_, name="y_ (Target Vector Distribution)") # fitter distributions_set = get_common_distributions() distributions_set.extend(['arcsine', 'cosine', 'expon', 'weibull_max', 'weibull_min', 'dweibull', 't', 'pareto', 'exponnorm', 'lognorm', "norm", "exponweib", "weibull_max", "weibull_min", "pareto", "genextreme"]) f = Fitter(SR_y, distributions = distributions_set) f.fit() f.summary()Parameter dari distribusi yang dipasang tersebut sebagai f.fitted_param 0
f.fitted_param {'expon': (25.0, 127.13348416289594), 'cauchy': (132.95536663886972, 52.62243313109789), 'gamma': (2.496376511103246, 20.737715299081657, 52.63462302106953), 'norm': (152.13348416289594, 77.00574586945044), 'chi2': (4.9927545799818525, 20.737731375230684, 26.317289176495912), 'rayleigh': (14.700761411215545, 111.3948791009951), 'uniform': (25.0, 321.0), 'powerlaw': (1.0864390359784966, -6.82376066691087, 352.82376073752073), 'cosine': (159.01669793410446, 65.6033963343604), 'arcsine': (-6.99037533558757, 352.9903753355876), 'exponpow': (0.15440493125261756, 24.999999999999996, 16.00571403929016), 'weibull_max': (0.168196678837625, 346.0000000000001, 1.6686318895897978), 'weibull_min': (0.2750237375428041, 24.999999999999996, 6.998090013988461), 'dweibull': (1.6343449438402855, 157.0247145542748, 73.64165822064473), 'pareto': (0.6022461735477798, -0.06169932009129858, 25.06169863339018), 'exponnorm': (6.298770105099791, 53.6065309642624, 15.642251691931591), 't': (127967.50529392948, 152.12481045573628, 76.98521783304597), 'exponweib': (0.9662752277542657, 1.6900600238468133, 24.142487003378918, 150.25955880342326), 'lognorm': (0.44469088248930166, -29.00650970868123, 164.71283014005542), 'genextreme': (0.029317901766728702, 116.52312667345038, 63.454691756821106)}Untuk mendapatkan daftar semua distribusi yang tersedia
from fitter import get_distributions get_distributions() _Menguji semuanya membutuhkan waktu lama, jadi yang terbaik adalah menggunakan f.fitted_param 1 yang diimplementasikan dan berpotensi memperluasnya dengan kemungkinan distribusi seperti yang dilakukan pada kode di atas
Distribusi probabilitas mewakili hasil prediksi dari berbagai nilai untuk data tertentu. Distribusi probabilitas terjadi dalam berbagai bentuk dan ukuran, masing-masing dengan karakteristiknya sendiri seperti mean, median, mode, skewness, standar deviasi, kurtosis, dll. Distribusi probabilitas terdiri dari berbagai jenis, mari kita tunjukkan cara menemukannya di artikel ini
Distribusi normal
Distribusi normal adalah distribusi probabilitas simetris yang berpusat pada rata-rata, menunjukkan bahwa data di sekitar rata-rata lebih sering muncul daripada data yang jauh darinya. distribusi normal disebut juga distribusi Gaussian. Kurva distribusi normal menyerupai kurva lonceng. Dalam contoh di bawah ini kami membuat data yang terdistribusi secara normal menggunakan fungsi stats. norm() yang menghasilkan data acak kontinu. skala parameter mengacu pada standar deviasi dan loc mengacu pada rata-rata. plt. distplot() digunakan untuk memvisualisasikan data. KDE mengacu pada perkiraan kepadatan kernel, parameter lainnya adalah untuk penyesuaian plot. Kurva berbentuk lonceng dapat dilihat saat kita memvisualisasikan plotnya
Python3
# import packages_
import scipy.stats as stats
import seaborn as sns
import matplotlib.pyplot as plt
# generate data
data=import0=import2import3=import5import6import7import8
import_9
scipy.stats as stats0= scipy.stats as stats2
scipy.stats as stats3scipy.stats as stats4=scipy.stats as stats6scipy.stats as stats7
scipy.stats as stats3scipy.stats as stats9=import1scipy.stats as stats7
scipy.stats as stats3import4=import6scipy.stats as stats7
scipy.stats as stats3import9=seaborn as sns1seaborn as sns2seaborn as sns3seaborn as sns4scipy.stats as stats7seaborn as sns6seaborn as sns3import2________13______9
import0import1import2=import4import5=import7import8
import_9
Keluaran
Distribusi Binomial
Di bawah serangkaian faktor atau asumsi tertentu, distribusi binomial mengungkapkan kemungkinan bahwa suatu variabel akan mengambil salah satu dari dua hasil atau nilai independen. mantan. jika percobaan berhasil atau gagal. jika jawaban untuk pertanyaan adalah "ya" atau "tidak" dll ... np. acak. binomial() digunakan untuk menghasilkan data binomial. n mengacu pada sejumlah jejak dan lebih memilih probabilitas setiap jejak.
Python3
# import packages_
import seaborn as sns
import matplotlib.pyplot as plt
import matplotlib.pyplot as plt6
# generate data
matplotlib.pyplot as plt8
matplotlib.pyplot as plt9= # generate data1# generate data2# generate data3
data= # generate data6# generate data7import8
import_9
scipy.stats as stats0= scipy.stats as stats2
scipy.stats as stats3scipy.stats as stats4=data6scipy.stats as stats7
scipy.stats as stats3scipy.stats as stats9==1scipy.stats as stats7
scipy.stats as stats3import4=import6scipy.stats as stats7
scipy.stats as stats3import9=seaborn as sns1seaborn as sns2seaborn as sns3seaborn as sns4scipy.stats as stats7seaborn as sns6seaborn as sns3import2________13______9
import0import1import2=import14import5=import7import8
import_9
Keluaran
Distribusi racun
Distribusi Poisson adalah sejenis distribusi probabilitas yang digunakan dalam statistik untuk mengilustrasikan berapa kali suatu peristiwa diharapkan terjadi dalam jangka waktu tertentu. Ini juga disebut distribusi hitungan. np. acak. fungsi poisson() digunakan untuk membuat data untuk distribusi poisson. lam mengacu pada Jumlah kejadian yang diharapkan terjadi dalam jangka waktu tertentu. Dalam contoh ini, kita dapat mengambil kondisi sebagai “jika seorang siswa belajar selama 5 jam sehari, peluang dia akan belajar 6 jam sehari adalah?