RangeFractile - fonction de script et fonction de graphique
RangeFractile() renvoie la valeur correspondant au énième fractile (quantile) d'une plage de nombres.
RangeFractile(fractile, first_expr[, Expression])
numérique
L'argument de cette fonction peut contenir des fonctions d'inter-enregistrements, qui renvoient à leur tour une liste de valeurs.
- fractile : Nombre compris entre 0 et 1 correspondant au fractile (quantile exprimé sous forme de fraction) à calculer.
- first_expr : Expression ou champ contenant les données à mesurer.
- Expression : Expressions ou champs facultatifs contenant la plage de données à mesurer.
| Exemple | Résultat |
|---|---|
| RangeFractile (0.24,1,2,4,6) | Renvoie 1.72. |
| RangeFractile(0.5,1,2,3,4,6) |
Renvoie 3. |
| RangeFractile (0.5,1,2,5,6) |
Renvoie 3.5. |
(à l'aide d'une expression)
RangeFractile (0.5, Above(Sum(MyField),0,3))
Dans cet exemple, la fonction d'inter-enregistrements Above() contient les arguments offset et count facultatifs. Vous obtenez une plage de résultats pouvant être utilisés comme données d'entrée dans les fonctions de plage. Dans le cas présent, Above(Sum(MyField),0,3) renvoie les valeurs de MyField pour la ligne active et les deux lignes au-dessus. Ces valeurs servent de données d'entrée dans la fonction RangeFractile(). Ainsi, pour la ligne inférieure du tableau ci-dessous, cela équivaut à RangeFractile(0.5, 3,4,6), c'est-à-dire au calcul du fractile 0,5 pour les séries 3, 4 et 6. Pour les deux premières lignes du tableau ci-dessous, le nombre de valeurs dans la plage est réduit en conséquence, en l'absence de lignes au-dessus de la ligne active. Des résultats similaires sont obtenus pour les autres fonctions d'inter-enregistrements.
| MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
|---|---|
| 1 | 1 |
| 2 | 1.5 |
| 3 | 2 |
| 4 | 3 |
| 5 | 4 |
| 6 | 5 |
Données utilisées dans les exemples :
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;
(sous forme de tableau)
Ajoutez l'exemple de script à votre document et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre document afin de visualiser le résultat.
RangeTab:
LOAD recno() as RangeID, RangeFractile(0.5,Field1,Field2,Field3) as MyRangeFrac 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 MyRangeFrac pour chaque enregistrement de la table.
| RangeID | MyRangeFrac |
|---|---|
| 1 | 6 |
| 2 | 3 |
| 3 | 8 |
| 4 | 11 |
| 5 | 5 |
| 6 | 4 |