RangeFractile Función de script y de gráfico
RangeFractile() devuelve el valor que corresponde al enésimo fractil (cuantil) de un rango de números.
Sintaxis:
RangeFractile(fractile, first_expr[, Expression])
Tipo de datos que devuelve: numérico
Argumentos:
Los argumentos de esta función pueden contener funciones inter-registro las cuales devuelven un rango de valores por sí mismas.
| Argumento | Descripción |
|---|---|
| fractile | Un número entre 0 y 1 correspondiente al percentil (cuantil expresado como fracción) que se debe calcular. |
| first_expr | La expresión o el campo que contiene los datos que se han de medir. |
| Expression | Las expresiones o campos opcionales que contienen el rango de datos que se han de medir. |
Ejemplos y resultados:
| Ejemplos | Resultados |
|---|---|
| RangeFractile (0.24,1,2,4,6) | Devuelve 1,72 |
| RangeFractile(0.5,1,2,3,4,6) |
Devuelve 3 |
| RangeFractile (0.5,1,2,5,6) |
Devuelve 3,5 |
Ejemplo:
Agregue el script de ejemplo en su app y ejecútelo. Para ver el resultado, agregue los campos enumerados en la columna de resultados a una hoja de su app.
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 tabla resultante muestra los valores que devuelve MyRangeFrac por cada uno de los registros de la tabla.
| RangeID | MyRangeFrac |
|---|---|
| 1 | 6 |
| 2 | 3 |
| 3 | 8 |
| 4 | 11 |
| 5 | 5 |
| 6 | 4 |
Ejemplo con expresión:
RangeFractile (0.5, Above(Sum(MyField),0,3))
En este ejemplo, la función inter-registro Above() contiene los argumentos opcionales offset y count. Esto produce un rango de resultados que puede utilizarse como entrada para cualquiera de las funciones de rango. En este caso, Above(Sum(MyField),0,3) devuelve los valores de MyField para la fila actual y las dos filas por encima. Estos valores sirven de entrada para la función RangeFractile(). Así, para la fila inferior de la tabla siguiente, esto es el equivalente a RangeFractile(0.5, 3,4,6), es decir, calcular el fractil 0,5 para la serie 3, 4 y 6. En las dos primeras filas de la tabla siguiente, el número de valores en el rango se reduce en consecuencia, donde no hay filas por encima de la fila actual. Se obtendrán resultados similares para las demás funciones inter-registro.
| MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
|---|---|
| 1 | 1 |
| 2 | 1,5 |
| 3 | 2 |
| 4 | 3 |
| 5 | 4 |
| 6 | 5 |
Datos utilizados en los ejemplos:
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;