RangeAvg Fonction de script et de graphique
RangeAvg() renvoie la moyenne d'une plage. Vous pouvez saisir une plage de valeurs ou une expression pour cette fonction.
RangeAvg(first_expr[, Expression])
numérique
Les arguments de cette fonction peuvent contenir des fonctions d'inter-enregistrements, qui renvoient à leur tour une liste de valeurs.
| Argument | Description |
|---|---|
| first_expr | Expression ou champ contenant les données à mesurer. |
| Expression | Expressions ou champs facultatifs contenant la plage de données à mesurer. |
Si la fonction ne trouve aucune valeur numérique, elle renvoie la valeur NULL.
| Exemples | Résultats |
|---|---|
| RangeAvg (1,2,4) |
Renvoie 2.33333333. |
| RangeAvg (1,'xyz') | Renvoie 1. |
| RangeAvg (null( ), 'abc') | Renvoie NULL. |
Ajoutez l'exemple de script à votre application et exécutez-le. Pour afficher le résultat, ajoutez les champs répertoriés dans la colonne de résultats à une feuille de votre application.
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
];
La table résultante affiche les valeurs renvoyées par la fonction MyRangeAvg pour chaque enregistrement de la table.
| RangeID | MyRangeAvg |
|---|---|
| 1 | 7 |
| 2 | 4 |
| 3 | 6 |
| 4 | 12.666 |
| 5 | 6.333 |
| 6 | 5 |
Exemple contenant une expression :
RangeAvg (Above(MyField),0,3))
Renvoie une moyenne mobile du résultat de la plage de trois valeurs de MyField calculée sur la ligne active et les deux lignes au-dessus. En spécifiant 3 pour le troisième argument, la fonction Above() renvoie trois valeurs, s'il y a suffisamment de lignes au-dessus, utilisées comme données d'entrée dans la fonction RangeAvg().
Données utilisées dans les exemples :
| MyField | RangeAvg (Above(MyField,0,3)) | Comments |
|---|---|---|
| 10 | 10 | Puisqu'il s'agit de la ligne du haut, la plage ne comporte qu'une seule valeur. |
| 2 | 6 | Il n'y a qu'une seule ligne au-dessus de cette ligne, la plage est donc : 10,2. |
| 8 | 6.6666666667 | Équivalent de RangeAvg(10,2,8) |
| 18 | 9.333333333 | - |
| 5 | 10. 333333333 | - |
| 9 | 10.6666666667 | - |
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;