RangeFractile - función de script y de gráfico

RangeFractile() devuelve el valor que corresponde al enésimo fractile (cuantil) de un rango de números.

Nota: RangeFractile() utiliza una interpolación lineal entre los rangos más próximos al calcular el percentil.

Sintaxis:  

RangeFractile(fractile, first_expr[, Expression])

Tipo de datos que devuelve: numérico

Argumentos:  

El argumento 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.

Añada el script de ejemplo a su documento y ejecútelo. A continuación, añada como mínimo los campos de la columna de resultados a una hoja de su documento para ver el resultado.

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 devueltos de MyRangeFrac para cada uno de los registros de la tabla.
RangeID MyRangeFrac
1 6
2 3
3 8
4 11
5 5
6 4

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 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 dos filas por encima. Estos valores sirven de entrada para la función RangeFractile(). Por lo tanto, para la fila inferior de la tabla siguiente, este es el equivalente de RangeFractile(0.5, 3,4,6), es decir, el cálculo del percentil 0,5 para las series 3, 4 y 6. En las dos primeras filas de la tabla siguiente, el número de valores del rango se reduce de manera acorde donde no hay ninguna fila encima de la fila actual. Se obtendrán resultados similares para las demás funciones inter-registro.

Datos utilizados en los ejemplos:

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

] ;