RangeAvg - script- en grafiekfunctie

RangeAvg() retourneert het gemiddelde van een bereik. De invoer van de functie is een waardebereik of een uitdrukking.

Syntaxis:  

RangeAvg(first_expr[, Expression])

Retourgegevenstype: numeriek

Argumenten:  

Het argument van deze functie kan interrecordfuncties bevatten die op hun beurt een bereik van waarden opleveren.

Argument Beschrijving
first_expr De uitdrukking die of het veld dat de gegevens bevat waarvan het gemiddelde moet worden berekend.
Expression Optionele uitdrukkingen of velden met extra gegevens waarvan het gemiddelde moet worden berekend. Er kunnen meerdere extra uitdrukkingen worden gebruikt.

Beperkingen:  

Als er geen numerieke waarde wordt gevonden, wordt NULL geretourneerd.

Voorbeelden en resultaten:  

Voorbeelden Resultaten
RangeAvg (1,2,4)

Retourneert 2.33333333

RangeAvg (1,'xyz') Retourneert 1
RangeAvg (null( ), 'abc') RetourneertNULL

Voeg het voorbeeldscript toe aan uw document en voer dit uit. Voeg vervolgens ten minste de velden die in de resultatenkolom staan aan een werkblad in uw document toe om het resultaat te bekijken.

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

];

De resulterende tabel bevat de geretourneerde waarden van MyRangeAvg voor elk van de records in de tabel.
RangeID MyRangeAvg
1 7
2 4
3 6
4 12.666
5 6.333
6 5

Voorbeeld met uitdrukking:

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

Retourneert een glijdend gemiddelde van het resultaat van het bereik van drie waarden van MyField berekend op de huidige rij en de twee rijen boven de huidige rij. Doordat het derde argument wordt opgegeven als 3, retourneert de functie Above() drie waarden, met voldoende rijen erboven, die als invoer worden gebruikt voor de functie RangeAvg().

Gegevens die worden gebruikt in voorbeelden:

Tip: Schakel het sorteren van MyField uit om ervoor te zorgen dat het voorbeeld werkt zoals verwacht.
MyField RangeAvg (Above(MyField,0,3))  
10 10 Omdat dit de bovenste rij is, bestaat het bereik uit slechts één waarde.
2 6 Er bevindt zich slechts één rij boven deze rij, dus is het bereik: 10,2.
8 6,6666666667 Het equivalent van RangeAvg(10,2,8)
18 9,333333333  
5 10. 333333333  
9 10,6666666667  

RangeTab:

LOAD * INLINE [

MyField

10

2

8

18

5

9

] ;