RangeFractile - Função de script e de gráfico
RangeFractile() retorna o valor que corresponde ao enésimo fractile (quantil) de um intervalo de números.
Sintaxe:
RangeFractile(fractile, first_expr[, Expression])
Tipo de dados de retorno: numérico
Argumentos:
Os argumentos dessa função podem conter funções interregistro, que por si só retornam um intervalo de valores.
| Argumento | Descrição |
|---|---|
| fractile | Um número entre 0 e 1 correspondente ao fractil (quantil expressado como uma fração) que será calculado. |
| first_expr | A expressão ou campo que contém os dados a serem medidos. |
| Expression | Expressões ou campos opcionais que contêm o intervalo de dados a ser medido. |
Exemplos e resultados:
| Exemplos | Resultados |
|---|---|
| RangeFractile (0.24,1,2,4,6) | Retorna 1,72 |
| RangeFractile(0.5,1,2,3,4,6) |
Retorna 3 |
| RangeFractile (0.5,1,2,5,6) |
Retorna 3,5 |
Exemplo:
Adicione o script de exemplo ao seu aplicativo e execute-o. Para ver o resultado, adicione os campos listados na coluna de resultados a uma pasta no seu aplicativo.
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
];
A tabela resultante mostra os valores retornados de MyRangeFrac para cada um dos registros na tabela.
| RangeID | MyRangeFrac |
|---|---|
| 1 | 6 |
| 2 | 3 |
| 3 | 8 |
| 4 | 11 |
| 5 | 5 |
| 6 | 4 |
Exemplo com a expressão:
RangeFractile (0.5, Above(Sum(MyField),0,3))
Neste exemplo, a função inter-registro Above() contém o opcional offset e count argumentos. Isso produz uma variedade de resultados que podem ser usados como entrada em qualquer uma das variações de funções. Neste caso, Above(Sum(MyField),0,3) retorna os valores de MyField para a linha atual e as duas linhas acima. Esses valores fornecem entrada para a função RangeFractile(). Então, para a linha inferior na tabela abaixo, isso é o equivalente a RangeFractile(0.5, 3,4,6), ou seja, calcular a fração 0.5 para a série 3, 4 e 6. As duas primeiras filas na tabela abaixo, o número de valores na variação é reduzido de acordo, onde não existem linhas acima da linha atual. Resultados semelhantes são produzidos para outras funções inter-registro.
| MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
|---|---|
| 1 | 1 |
| 2 | 1.5 |
| 3 | 2 |
| 4 | 3 |
| 5 | 4 |
| 6 | 5 |
Dados usados nos exemplos:
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;