make-series işleci
Belirtilen eksen boyunca belirtilen toplanmış değer serisini oluşturun.
Syntax
T| make-series
[MakeSeriesParameters] [Column=
] Toplama [default
=
DefaultValue] [,
...] on
AxisColumn [from
start] [to
end] step
step [by
[Column=
] GroupExpression [,
...]]
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Gerekli | Açıklama |
---|---|---|---|
Sütun | string |
Sonuç sütununun adı. Varsayılan olarak ifadeden türetilen bir addır. | |
DefaultValue | Skalar | Eksik değerler yerine kullanılacak varsayılan değer. AxisColumn ve GroupExpression'ın belirli değerlerine sahip bir satır yoksa, dizinin karşılık gelen öğesine bir DefaultValue atanır. Varsayılan değer 0'dır. | |
Toplama | string |
✔️ | Sütun adlarını bağımsız değişken olarak içeren veya avg() gibi count() bir toplama işlevine yapılan çağrı. Toplama işlevlerinin listesine bakın. Yalnızca sayısal sonuçlar döndüren toplama işlevleri işleciyle make-series birlikte kullanılabilir. |
AxisColumn | string |
✔️ | Serinin sıralandığı sütun. Genellikle sütun değerleri türünde datetime olur ancak timespan tüm sayısal türler kabul edilir. |
Başlatmak | Skalar | ✔️ | Oluşturulacak serilerin her biri için AxisColumn'un düşük sınır değeri. Başlangıç belirtilmezse, her seride veri içeren ilk bölme veya adım olur. |
Son -unda | Skalar | ✔️ | AxisColumn'un yüksek ilişkili kapsayıcı olmayan değeri. Zaman serisinin son dizini bu değerden küçüktür ve başlangıç artı sonundan küçük olan adımın tamsayı katı olur. End belirtilmezse, her seri için veri içeren son bölmenin veya adımın üst sınırı olur. |
Adım | Skalar | ✔️ | AxisColumn dizisinin iki ardışık öğesi arasındaki fark veya bölme boyutu. Olası zaman aralıklarının listesi için bkz. zaman aralığı. |
GroupExpression | Bir dizi farklı değer sağlayan sütunlar üzerinde bir ifade. Genellikle kısıtlanmış bir değer kümesi sağlayan bir sütun adıdır. | ||
MakeSeriesParameters | Davranışı denetleyebilen Ad= Değeri biçiminde sıfır veya daha fazla boşlukla ayrılmış parametre. Bkz. desteklenen make serisi parametreleri. |
Not
Start, end ve step parametreleri Bir AxisColumn değerleri dizisi oluşturmak için kullanılır. Dizi, başlangıç ve bitiş arasındaki değerlerden oluşur ve adım değeri bir dizi öğesi ile bir sonraki arasındaki farkı temsil eder. Tüm Toplama değerleri sırasıyla bu diziye sıralanır.
Desteklenen make serisi parametreleri
Ad | Açıklama |
---|---|
kind |
Make-series işlecinin girişi boş olduğunda varsayılan sonucu üretir. Değer: nonempty |
hint.shufflekey=<key> |
Sorgu, shufflekey verileri bölümleme anahtarı kullanarak küme düğümlerinde sorgu yükünü paylaşır. Bkz . karıştırma sorgusu |
Not
Make-series tarafından oluşturulan diziler 1048576 değerlerle sınırlıdır (2^20). Make-series ile daha büyük bir dizi oluşturmaya çalışmak hataya veya kesilmiş bir diziye neden olabilir.
Alternatif Söz Dizimi
T| make-series
[Sütun=
] Toplama [default
=
DefaultValue] [,
...] on
AxisColumnin
range(
Başlatmak,
Durdurmak,
Adım)
[by
[Sütun=
] GroupExpression [,
...]]
Alternatif söz diziminden oluşturulan seri, ana söz diziminden iki açıdan farklıdır:
- Durdurma değeri dahil.
- Dizin ekseninin gruplanması, bin_at() ile değil bin() ile oluşturulur; bu da başlatmanın oluşturulan seriye dahil edilemediğini gösterir.
Alternatif söz diziminin değil, make-series ana söz diziminin kullanılması önerilir.
Döndürülenler
Giriş satırları, ifadelerin ve AxisColumnadım,
başlangıç)
ifadesinin ,
aynı değerlerine by
bin_at(
sahip gruplar halinde düzenlenir. Ardından, belirtilen toplama işlevleri her grup üzerinde hesaplanır ve her grup için bir satır oluşturulur. Sonuç, axisColumn sütununu ve hesaplanan her toplama için en az bir sütunu içerirby
. (Birden çok sütun veya sayısal olmayan sonuçlar üzerinde toplamalar desteklenmez.)
Bu ara sonuç, ve bin_at(
AxisColumnadım,
başlangıç)
değerlerinin by
,
farklı bileşimleri olduğu kadar çok satıra sahiptir.
Son olarak, ara sonuçtaki satırlar ifadelerin by
aynı değerlerine sahip gruplar halinde düzenlenir ve tüm toplanan değerler diziler halinde düzenlenir (türdeki değerler dynamic
). Her toplama için aynı ada sahip dizisini içeren bir sütun vardır. Son sütun, belirtilen adıma göre binned AxisColumn değerlerini içeren bir dizidir.
Not
Hem toplama hem de gruplandırma ifadeleri için rastgele ifadeler sağlayabilmenize rağmen, basit sütun adlarını kullanmak daha verimlidir.
Toplama işlevlerinin listesi
İşlev | Açıklama |
---|---|
avg() | Grup genelinde ortalama bir değer döndürür |
avgif() | Grubun koşuluna sahip bir ortalama verir |
count() | Grubun sayısını döndürür |
countif() | Grubun koşuluna sahip bir sayı döndürür |
dcount() | Grup öğelerinin yaklaşık ayrı sayısını döndürür |
dcountif() | Grubun koşuluyla yaklaşık ayrı bir sayı döndürür |
max() | Grup genelindeki en büyük değeri verir |
maxif() | Grubun koşuluna sahip en büyük değeri verir |
min() | Grup genelinde minimum değeri verir |
minif() | Grubun koşuluyla en küçük değeri verir |
percentile() | Grup genelinde yüzdebirlik değeri verir |
take_any() | Grup için boş olmayan rastgele bir değer döndürür |
stdev() | Grup genelinde standart sapması verir |
sum() | Grup içindeki öğelerin toplamını döndürür |
sumif() | Grubun koşuluna sahip öğelerin toplamını döndürür |
variance() | Grup genelinde varyansı verir |
Seri analizi işlevlerinin listesi
İşlev | Açıklama |
---|---|
series_fir() | Sonlu Darbe Yanıtı filtresi uygular |
series_iir() | Sonsuz Dürtü Yanıtı filtresi uygular |
series_fit_line() | Girişin en iyi tahmini olduğu düz bir çizgi bulur |
series_fit_line_dynamic() | Girişin en iyi yaklaşık değeri olan ve dinamik nesne döndüren bir satır bulur |
series_fit_2lines() | Girişin en iyi tahmini olan iki satırı bulur |
series_fit_2lines_dynamic() | Girişin en iyi yaklaşık değeri olan iki satırı bulur ve dinamik nesne döndürür |
series_outliers() | Serideki anomali puanlarını puanlar |
series_periods_detect() | Bir zaman serisinde var olan en önemli dönemleri bulur |
series_periods_validate() | Zaman serisinin belirli uzunluklarda düzenli desenler içerip içermediğini denetler |
series_stats_dynamic() | Ortak istatistiklerle birden çok sütun döndürme (min/max/varyans/stdev/average) |
series_stats() | Ortak istatistiklerle dinamik bir değer oluşturur (min/max/varyans/stdev/average) |
Seri çözümleme işlevlerinin tam listesi için bkz. Seri işleme işlevleri
Seri ilişkilendirme işlevlerinin listesi
İşlev | Açıklama |
---|---|
series_fill_backward() | Bir serideki eksik değerlerin geriye doğru doldurma ilişkilendirmesini gerçekleştirir |
series_fill_const() | Serideki eksik değerleri belirtilen sabit değerle değiştirir |
series_fill_forward() | Serideki eksik değerlerin ileriye doğru doldurma ilişkilendirmesini gerçekleştirir |
series_fill_linear() | Serideki eksik değerlerin doğrusal ilişkilendirmesini gerçekleştirir |
- Not: İlişkilendirme işlevleri varsayılan olarak eksik bir değer olarak varsayılır
null
. Bu nedenle, seri için ilişkilendirme işlevlerini kullanmayı düşünüyorsanız içindemake-series
double(null
) değerini belirtindefault=
.
Örnekler
Belirtilen aralıkta zaman damgası tarafından sipariş edilen her tedarikçiden gelen her bir meyvenin sayı dizilerini ve ortalama fiyatlarını gösteren tablo. Her farklı meyve ve tedarikçi birleşimi için çıkışta bir satır vardır. Çıkış sütunları meyve, sağlayıcı ve dizilerini gösterir: sayı, ortalama ve tüm zaman çizelgesi (2016-01-01 ile 2016-01-10). Tüm diziler ilgili zaman damgasına göre sıralanır ve tüm boşluklar varsayılan değerlerle doldurulur (bu örnekte 0). Diğer tüm giriş sütunları yoksayılır.
T | make-series PriceAvg=avg(Price) default=0
on Purchase from datetime(2016-09-10) to datetime(2016-09-13) step 1d by Supplier, Fruit
let data=datatable(timestamp:datetime, metric: real)
[
datetime(2016-12-31T06:00), 50,
datetime(2017-01-01), 4,
datetime(2017-01-02), 3,
datetime(2017-01-03), 4,
datetime(2017-01-03T03:00), 6,
datetime(2017-01-05), 8,
datetime(2017-01-05T13:40), 13,
datetime(2017-01-06), 4,
datetime(2017-01-07), 3,
datetime(2017-01-08), 8,
datetime(2017-01-08T21:00), 8,
datetime(2017-01-09), 2,
datetime(2017-01-09T12:00), 11,
datetime(2017-01-10T05:00), 5,
];
let interval = 1d;
let stime = datetime(2017-01-01);
let etime = datetime(2017-01-10);
data
| make-series avg(metric) on timestamp from stime to etime step interval
avg_metric | timestamp |
---|---|
[ 4.0, 3.0, 5.0, 0.0, 10.5, 4.0, 3.0, 8.0, 6.5 ] | [ "2017-01-01T00:00:00.0000000Z", "2017-01-02T00:00:00.0000000Z", "2017-01-03T00:00:00.0000000Z", "2017-01-04T00:00:00.0000000Z", "2017-01-05T00:00:00.0000000Z", "2017-01-06T00:00:00.0000000Z", "2017-01-07T00:00:00.0000000Z", "2017-01-08T00:00:00.0000000Z", "2017-01-09T00:00:00.0000000Z" ] |
girişi make-series
boş olduğunda, varsayılan davranışı make-series
boş bir sonuç üretir.
let data=datatable(timestamp:datetime, metric: real)
[
datetime(2016-12-31T06:00), 50,
datetime(2017-01-01), 4,
datetime(2017-01-02), 3,
datetime(2017-01-03), 4,
datetime(2017-01-03T03:00), 6,
datetime(2017-01-05), 8,
datetime(2017-01-05T13:40), 13,
datetime(2017-01-06), 4,
datetime(2017-01-07), 3,
datetime(2017-01-08), 8,
datetime(2017-01-08T21:00), 8,
datetime(2017-01-09), 2,
datetime(2017-01-09T12:00), 11,
datetime(2017-01-10T05:00), 5,
];
let interval = 1d;
let stime = datetime(2017-01-01);
let etime = datetime(2017-01-10);
data
| take 0
| make-series avg(metric) default=1.0 on timestamp from stime to etime step interval
| count
Çıkış
Count |
---|
0 |
içinde kind=nonempty
make-series
kullanıldığında varsayılan değerlerin boş olmayan bir sonucu oluşturulur:
let data=datatable(timestamp:datetime, metric: real)
[
datetime(2016-12-31T06:00), 50,
datetime(2017-01-01), 4,
datetime(2017-01-02), 3,
datetime(2017-01-03), 4,
datetime(2017-01-03T03:00), 6,
datetime(2017-01-05), 8,
datetime(2017-01-05T13:40), 13,
datetime(2017-01-06), 4,
datetime(2017-01-07), 3,
datetime(2017-01-08), 8,
datetime(2017-01-08T21:00), 8,
datetime(2017-01-09), 2,
datetime(2017-01-09T12:00), 11,
datetime(2017-01-10T05:00), 5,
];
let interval = 1d;
let stime = datetime(2017-01-01);
let etime = datetime(2017-01-10);
data
| take 0
| make-series kind=nonempty avg(metric) default=1.0 on timestamp from stime to etime step interval
Çıkış
avg_metric | timestamp |
---|---|
[ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] |
[ "2017-01-01T00:00:00.0000000Z", "2017-01-02T00:00:00.0000000Z", "2017-01-03T00:00:00.0000000Z", "2017-01-04T00:00:00.0000000Z", "2017-01-05T00:00:00.0000000Z", "2017-01-06T00:00:00.0000000Z", "2017-01-07T00:00:00.0000000Z", "2017-01-08T00:00:00.0000000Z", "2017-01-09T00:00:00.0000000Z" ] |
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin