Gå till huvudinnehåll Gå till ytterligare innehåll

RangeAvg - skript- och diagramfunktion

RangeAvg() returnerar medelvärdet av ett intervall. Indata till funktionen kan vara antingen ett intervall med värden eller ett uttryck.

Syntax:  

RangeAvg(first_expr[, Expression])

Returnerad datatyp: numeriska

Argument:  

Argumentet hos denna funktion kan innehålla postöverskridande funktioner som i sig själva returnerar ett intervall av värden.

  • first_expr: Det uttryck eller fält som innehåller de data som medelvärdet ska beräknas för.
  • Expression: Valbara uttryck eller fält som innehåller ytterligare data som medelvärdet ska beräknas för. Flera ytterligare uttryck kan användas.

Begränsningar:  

Om inget numeriskt värde påträffas returneras NULL.

Exempel:  

Exempel och resultat
Exempel Resultat
RangeAvg (1,2,4)

Returnerar 2,33333333

RangeAvg (1,'xyz') Returnerar 1
RangeAvg (null( ), 'abc') Returnerar NULL

Exempel: (uttryck används)

RangeAvg (Above(MyField),0,3))

Returnerar ett glidande genomsnitt för resultatet av intervallet av tre värden för MyField beräknat på den aktuella raden och de två raderna ovanför den aktuella raden. Om du anger det tredje argumentet som 3 returnerar Above()-funktionen tre värden, där det finns tillräckligt med rader ovanför, vilka används som indata för RangeAvg()-funktionen.

Anteckning om tipsInaktivera sortering för MyField för att vara säker på att exemplet fungerar.
Exempel på utdata från uttryck
MyField RangeAvg (Above(MyField,0,3)) Förklaring
10 10 Eftersom det här är den översta raden består intervallet endast av ett värde.
2 6 Det finns endast en rad ovanför den här raden, så intervallet är: 10,2.
8 6.6666666667 Motsvarande RangeAvg(10,2,8)
18 9.333333333 -
5 10. 333333333 -
9 10.6666666667 -

Data som används i exempel:

RangeTab:

LOAD * INLINE [

MyField

10

2

8

18

5

9

] ;

Exempel: (som tabell)

Lägg till exempelskriptet i dokumentet och kör det. Lägg sedan till åtminstone de fält som listas i resultatkolumnen på ett ark i dokumentet för att se resultatet.

RangeTab3:

LOAD recno() as RangeID, RangeAvg(Field1,Field2,Field3) as MyRangeAvg INLINE [

Field1, Field2, Field3

10,5,6

2,3,7

8,2,8

18,11,9

5,5,9

9,4,2

];

Den resulterande tabellen visar de returnerade värdena för MyRangeAvg för varje post i tabellen.

Exempel på utdata som tabell
RangeID MyRangeAvg
1 7
2 4
3 6
4 12.666
5 6.333
6 5

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!

Gå med i programmet Analytics Modernization

Remove banner from view

Modernisera utan att kompromissa med dina värdefulla QlikView-appar med programmet för analysmodernisering. Klicka här för mer information eller ta kontakt: ampquestions@qlik.com