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:  

Argumenten hos denna funktion kan innehålla postöverskridande funktioner som i sig returnerar en lista över värden.

Argument
Argument Beskrivning
first_expr Det uttryck eller fält som innehåller de data som ska mätas.
Expression Valfria uttryck eller fält som innehåller de intervalldata som ska mätas.

Begränsningar:  

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

Exempel och resultat:  

Skriptexempel
Exempel Resultat
RangeAvg (1,2,4)

Returnerar 2,33333333

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

Exempel:  

Lägg till exempelskriptet i appen och kör det. När du vill se resultatet lägger du till de fält som anges i resultatkolumnen i ett ark i din app.

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.

Resultattabell
RangeID MyRangeAvg
1 7
2 4
3 6
4 12.666
5 6.333
6 5

Exempel med uttryck:

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.

Data som används i exempel:

Anteckning om tipsInaktivera sortering för MyField för att vara säker på att exemplet fungerar.
Exempeldata
MyField RangeAvg (Above(MyField,0,3)) Comments
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 -

RangeTab:

LOAD * INLINE [

MyField

10

2

8

18

5

9

] ;

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!