Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Funktionen percentile() beräknar en uppskattning för den angivna av populationen som definieras av uttr.
Noggrannheten beror på populationens densitet i percentilens region.
percentiles() fungerar på samma sätt som percentile(). Men percentiles() kan beräkna flera percentilvärden samtidigt, vilket är effektivare än att beräkna varje percentilvärde separat.
Information om hur du beräknar viktade percentiler finns i percentilesw().
Not
Den här funktionen används tillsammans med operatorn summarize.
Syntax
percentile(
,
percentil)
percentiles(
,
percentiler)
Läs mer om syntaxkonventioner.
Parametrar
| Namn | Typ | Krävs | Beskrivning |
|---|---|---|---|
| uttr | string |
✔️ | Uttrycket som ska användas för aggregeringsberäkning. |
| percentil | verklig | ✔️ | En konstant som anger percentilen. |
| percentiler | verklig | ✔️ | En eller flera kommaavgränsade percentiler. |
Returnerar
Returnerar en tabell med uppskattningarna för uttr av de angivna percentilerna i gruppen, var och en i en separat kolumn.
Not
Om du vill returnera percentilerna i en enda kolumn kan du läsa Returnera percentiler som en matris.
Exempel
Exemplen i det här avsnittet visar hur du använder syntaxen för att komma igång.
Exemplen i den här artikeln använder offentligt tillgängliga tabeller i hjälpkluster, till exempel tabellen
StormEventsi databasen Samples.
Exemplen i den här artikeln använder offentligt tillgängliga tabeller, till exempel tabellen
StormEventsi Väderanalys exempeldata.
Beräkna en percentil
I följande exempel visas värdet för DamageProperty större än 95% av exempeluppsättningen och mindre än 5% i exempeluppsättningen.
StormEvents | summarize percentile(DamageProperty, 95) by State
utdata
Resultattabellen som visas innehåller endast de första 10 raderna.
| Stat | percentile_DamageProperty_95 |
|---|---|
| ATLANTEN, SÖDRA | 0 |
| FLORIDA | 40000 |
| GEORGIEN | 143333 |
| MISSISSIPPI | 80000 |
| AMERIKANSKA SAMOA | 250000 |
| KENTUCKY | 35000 |
| OHIO | 150000 |
| KANSAS | 51392 |
| MICHIGAN | 49167 |
| ALABAMA | 50000 |
Beräkna flera percentiler
I följande exempel visas värdet för DamageProperty som samtidigt beräknas med hjälp av 5, 50 (median) och 95.
StormEvents | summarize percentiles(DamageProperty, 5, 50, 95) by State
utdata
Resultattabellen som visas innehåller endast de första 10 raderna.
| Stat | percentile_DamageProperty_5 | percentile_DamageProperty_50 | percentile_DamageProperty_95 |
|---|---|---|---|
| ATLANTEN, SÖDRA | 0 | 0 | 0 |
| FLORIDA | 0 | 0 | 40000 |
| GEORGIEN | 0 | 0 | 143333 |
| MISSISSIPPI | 0 | 0 | 80000 |
| AMERIKANSKA SAMOA | 0 | 0 | 250000 |
| KENTUCKY | 0 | 0 | 35000 |
| OHIO | 0 | 2000 | 150000 |
| KANSAS | 0 | 0 | 51392 |
| MICHIGAN | 0 | 0 | 49167 |
| ALABAMA | 0 | 0 | 50000 |
| ... | ... |
Returnera percentiler som en matris
I stället för att returnera värdena i enskilda kolumner använder du funktionen percentiles_array() för att returnera percentilerna i en enda kolumn av dynamisk matristyp.
Syntax
percentiles_array(
,
percentiler)
Parametrar
| Namn | Typ | Krävs | Beskrivning |
|---|---|---|---|
| uttr | string |
✔️ | Uttrycket som ska användas för aggregeringsberäkning. |
| percentiler | verklig eller dynamisk | ✔️ | En eller flera kommaavgränsade percentiler eller en dynamisk matris med percentiler. Varje percentil måste vara ett verkligt värde. |
Returnerar
Returnerar en uppskattning för uttr av de angivna percentilerna i gruppen som en enda kolumn av dynamisk matristyp.
Exempel
Kommaavgränsade percentiler
Flera percentiler kan hämtas som en matris i en enda dynamisk kolumn, i stället för i flera kolumner som med percentiler().
TransformedSensorsData
| summarize percentiles_array(Value, 5, 25, 50, 75, 95), avg(Value) by SensorName
utdata
Resultattabellen visar endast de första 10 raderna.
| SensorName | percentiles_Value | avg_Value |
|---|---|---|
| sensor-82 | ["0.048141473520867069","0.24407515500271132","0.48974511106780577","0.74160998970950343","0.94587903204190071"] | 0.493950914 |
| sensor-130 | ["0.049200214398937764","0.25735850440187535","0.51206374010048239","0.74182335059053839","0.95210342463616771"] | 0.505111463 |
| sensor-56 | ["0.04857779335488676","0.24709868149337144","0.49668762923789589","0.74458470404241883","0.94889104840865857"] | 0.497955018 |
| sensor-24 | ["0.051507199150534679","0.24803904945640423","0.50397070213183581","0.75653888126010793","0.9518782718727431"] | 0.501084379 |
| sensor-47 | ["0.045991246974755672","0.24644331118208851","0.48089197707088743","0.74475142784472248","0.9518322864959039"] | 0.49386228 |
| sensor-135 | ["0.05132897529660399","0.24204987641954018","0.48470113942206461","0.74275730068433621","0.94784079559229406"] | 0.494817619 |
| sensor-74 | ["0.048914714739047828","0.25160926036445724","0.49832498850160978","0.75257887767110776","0.94932261924236094"] | 0.501627252 |
| sensor-173 | ["0.048333149363009836","0.26084250046756496","0.51288012531934613","0.74964772791583412","0.95156058795294"] | 0.505401226 |
| sensor-28 | ["0.048511161184567046","0.2547387968731824","0.50101318228599656","0.75693845702682039","0.95243122486483989"] | 0.502066244 |
| sensor-34 | ["0.049980293859462954","0.25094722564949412","0.50914023067384762","0.75571549713447961","0.95176564809278674"] | 0.504309494 |
| ... | ... | ... |
Dynamisk matris med percentiler
Percentiler för percentiles_array kan anges i en dynamisk matris med heltals- eller flyttalsnummer. Matrisen måste vara konstant men behöver inte vara literal.
TransformedSensorsData
| summarize percentiles_array(Value, dynamic([5, 25, 50, 75, 95])), avg(Value) by SensorName
utdata
Resultattabellen visar endast de första 10 raderna.
| SensorName | percentiles_Value | avg_Value |
|---|---|---|
| sensor-82 | ["0.048141473520867069","0.24407515500271132","0.48974511106780577","0.74160998970950343","0.94587903204190071"] | 0.493950914 |
| sensor-130 | ["0.049200214398937764","0.25735850440187535","0.51206374010048239","0.74182335059053839","0.95210342463616771"] | 0.505111463 |
| sensor-56 | ["0.04857779335488676","0.24709868149337144","0.49668762923789589","0.74458470404241883","0.94889104840865857"] | 0.497955018 |
| sensor-24 | ["0.051507199150534679","0.24803904945640423","0.50397070213183581","0.75653888126010793","0.9518782718727431"] | 0.501084379 |
| sensor-47 | ["0.045991246974755672","0.24644331118208851","0.48089197707088743","0.74475142784472248","0.9518322864959039"] | 0.49386228 |
| sensor-135 | ["0.05132897529660399","0.24204987641954018","0.48470113942206461","0.74275730068433621","0.94784079559229406"] | 0.494817619 |
| sensor-74 | ["0.048914714739047828","0.25160926036445724","0.49832498850160978","0.75257887767110776","0.94932261924236094"] | 0.501627252 |
| sensor-173 | ["0.048333149363009836","0.26084250046756496","0.51288012531934613","0.74964772791583412","0.95156058795294"] | 0.505401226 |
| sensor-28 | ["0.048511161184567046","0.2547387968731824","0.50101318228599656","0.75693845702682039","0.95243122486483989"] | 0.502066244 |
| sensor-34 | ["0.049980293859462954","0.25094722564949412","0.50914023067384762","0.75571549713447961","0.95176564809278674"] | 0.504309494 |
| ... | ... | ... |
Närmaste rangordningsprocentil
P-th percentil (0 <P<= 100) i en lista med ordnade värden, sorterade i stigande ordning, är det minsta värdet i listan. P- procent av data är mindre eller lika med P-e percentilvärdet (från Wikipedia-artikeln om percentiler).
Definiera 0-th percentiler som den minsta medlemmen i populationen.
Not
Med tanke på beräkningens ungefärliga karaktär får det faktiska returnerade värdet inte vara medlem i populationen. Närmsta rangdefinition innebär att P=50 inte överensstämmer med interpolativ definition av medianvärdet. När man utvärderar betydelsen av denna avvikelse för det specifika programmet bör populationens storlek och ett uppskattningsfel beaktas.
Uppskattningsfel i percentiler
Percentilaggregatet ger ett ungefärligt värde med hjälp av T-Digest.
Not
- Gränserna för uppskattningsfelet varierar med värdet för den begärda percentilen. Den bästa noggrannheten är i båda ändar av [0..100]-skalan. Percentilerna 0 och 100 är de exakta lägsta och högsta värdena för fördelningen. Noggrannheten minskar gradvis mot mitten av skalan. Det är sämst på medianen och är begränsad till 1%.
- Felgränsen observeras i rangordningen, inte på värdet. Anta att percentil(X, 50) returnerade ett värde på Xm. Uppskattningen garanterar att minst 49% och högst 51% av värdena för X är mindre eller lika med Xm. Det finns ingen teoretisk gräns för skillnaden mellan Xm och det faktiska medianvärdet X.
- Uppskattningen kan ibland resultera i ett exakt värde, men det finns inga tillförlitliga villkor att definiera när så är fallet.