İngilizce dilinde oku

Aracılığıyla paylaş


series_fir()

Şunlar için geçerlidir: ✅Microsoft Fabric✅Azure Veri Gezgini Azure İzleyiciMicrosoft Sentinel

Seriye Sonlu Darbe Yanıtı (FIR) filtresi uygular.

İşlev, giriş olarak dinamik bir sayısal dizi içeren bir ifade alır ve Sonlu Dürtü Yanıtı filtresi uygular. Katsayıları belirterek filter hareketli ortalama, düzeltme, değişiklik algılama ve daha birçok kullanım örneğini hesaplamak için kullanılabilir. işlevi, dinamik diziyi ve filtrenin katsayılarının statik dinamik dizisini içeren sütunu giriş olarak alır ve filtreyi sütuna uygular. Filtrelenmiş çıkışı içeren yeni bir dinamik dizi sütunu verir.

Sözdizimi

series_fir(series, filter [,normalize[, center]])

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
silsile dynamic ✔️ Sayısal değerler dizisi.
filter dynamic ✔️ Filtrenin katsayılarını içeren sayısal değerler dizisi.
Normalleştirmek bool Filtrenin normalleştirilip normalleştirilmeyeceğini gösterir. Yani katsayıların toplamına bölünür. Filtre negatif değerler içeriyorsa, normalleştirme olarak falsebelirtilmelidir, aksi takdirde sonuç olur null. Belirtilmezse, filtredeki negatif değerlerin varlığına bağlı olarak varsayılan değeri true varsayılır. Filtre en az bir negatif değer içeriyorsa normalleştirmenin olduğu falsevarsayılır.
orta bool Filtrenin geçerli noktadan önceki ve sonraki bir zaman penceresine veya geçerli noktadan geriye doğru bir zaman penceresine simetrik olarak uygulanıp uygulanmadığını gösterir. Varsayılan olarak, center, filtreyi yalnızca geçerli ve eski noktalara uygulayabilmemiz için akış verileri senaryosuna uyan değeridir false. Ancak geçici işleme için zaman serisiyle eşitlenmiş olarak ayarlayabilirsiniz true. Aşağıdaki örneklere bakın. Bu parametre filtrenin grup gecikmesini denetler.

İpucu

Normalleştirme, katsayıların toplamının 1 olduğundan emin olmak için kullanışlı bir yoldur. normalleştirildiğinde true, filtre seriyi yükseltmez veya hafifletemez. Örneğin, dört bölmenin hareketli ortalaması filter=[1,1,1,1] ile belirtilebilir ve normalleştirilebilir=true; bu, [0,25,0,25.0,25,0,25] yazmaktan daha basittir.

Döndürülenler

Filtrelenmiş çıkışı içeren yeni bir dinamik dizi sütunu.

Örnekler

  • Filter=[1,1,1,1,1] ayarını yaparak ve normalleştirerek=true (varsayılan) beş noktanın hareketli ortalamalarını hesaplayın. Ortafalse= (varsayılan) trueile : karşılaştırmasının etkisini not edin:
range t from bin(now(), 1h) - 23h to bin(now(), 1h) step 1h
| summarize t=make_list(t)
| project
    id='TS',
    val=dynamic([0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 20, 40, 100, 40, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0]),
    t
| extend
    5h_MovingAvg=series_fir(val, dynamic([1, 1, 1, 1, 1])),
    5h_MovingAvg_centered=series_fir(val, dynamic([1, 1, 1, 1, 1]), true, true)
| render timechart

Bu sorgu şunu döndürür:
5h_MovingAvg: Ortalama filtreyi hareket ettiren beş nokta. Ani artış düzeltilir ve tepe noktası (5-1)/2 = 2h olarak kaydırılır.
5h_MovingAvg_centered: Aynı, ancak ayarıyla center=truetepe özgün konumunda kalır.

Seri köknar.

  • Bir nokta ile önceki nokta arasındaki farkı hesaplamak için filter=[1,-1] değerini ayarlayın.
range t from bin(now(), 1h) - 11h to bin(now(), 1h) step 1h
| summarize t=make_list(t)
| project id='TS', t, value=dynamic([0, 0, 0, 0, 2, 2, 2, 2, 3, 3, 3, 3])
| extend diff=series_fir(value, dynamic([1, -1]), false, false)
| render timechart

Seri köknar 2.