Kernel density estimation (KDE) adalah metode non-parametrik yang menggunakan fungsi puncak halus untuk memperkirakan fungsi kepadatan probabilitas yang tidak diketahui berdasarkan data observasi.
Fungsi ini menyesuaikan titik data observasi dengan fungsi puncak halus untuk mensimulasikan kurva distribusi probabilitas sebenarnya.
-
Sintaks
select kernel_density_estimation(bigint stamp, double value, varchar kernelType) -
Parameter
Parameter
Deskripsi
stamp
Unix timestamp dalam satuan detik.
value
Nilai observasi pada timestamp tersebut.
kernelType
-
box: Kernel berbentuk persegi panjang (uniform).
-
epanechnikov: Kurva Epanechnikov.
-
gaussian: Kurva Gaussian.
-
-
Keluaran
Field
Deskripsi
unixtime
Unix timestamp dari data mentah.
real
Nilai observasi.
pdf
Nilai kepadatan probabilitas pada setiap titik data.
-
Contoh
-
Kueri contoh:
* | select date_trunc('second', cast(t1[1] as bigint)) as time, t1[2] as real, t1[3] as pdf from ( select kernel_density_estimation(time, num, 'gaussian') as res from ( select '("__time__" - ("__time__" % 10))' as time, COUNT(*) * 1.0 as num from log group by time order by time) ), unnest(res) as t(t1) limit 1000 -
Hasil:

-