RangeFractile — funkcja skryptu i funkcja wykresu

Funkcja RangeFractile() zwraca wartość odpowiadającą n-temu kwantylowi (fractile) z zakresu liczb.

Uwaga: Funkcja RangeFractile() korzysta z liniowej interpolacji między najbliższymi klasyfikacjami podczas obliczania fraktala.

Syntax:  

RangeFractile(fractile, first_expr[, Expression])

Return data type: liczbowy

Arguments:  

Argumenty tej funkcji mogą zawierać funkcje międzywierszowe, które same zwracają listę wartości.

Argument Opis
fractile Liczba z przedziału od 0 do 1 odpowiadająca obliczanemu fraktylowi (kwantylowi wyrażonemu ułamkiem).
first_expr Wyrażenie lub pole zawierające mierzone dane.
Expression Opcjonalne wyrażenia lub pola zawierające mierzony zakres danych.

Dodaj skrypt przykładowy do aplikacji i uruchom ją. Następnie dodaj do arkusza w swojej aplikacji co najmniej pola wyszczególnione w kolumnie wyników, aby wyświetlić wynik.

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

];

Tabela wynikowa przedstawia zwrócone wartości MyRangeFrac dla każdego z rekordów w tabeli.
RangeID MyRangeFrac
1 6
2 3
3 8
4 11
5 5
6 4

Examples and results:  

Przykłady Wyniki
RangeFractile (0.24,1,2,4,6) Zwraca wartość 1,72
RangeFractile(0.5,1,2,3,4,6)

Zwraca wartość 3

RangeFractile (0.5,1,2,5,6)

Zwraca wartość 3,5

Przykład z wyrażeniem:

RangeFractile (0.5, Above(Sum(MyField),0,3))

W tym przykładzie funkcja międzywierszowa Above() zawiera opcjonalne argumenty offset i count. W efekcie zwracany jest zakres wyników, który może stanowić źródło danych wejściowych dla dowolnej funkcji zakresu. W tym przypadku funkcja Above(Sum(MyField),0,3) zwraca wartości z kolumny MyField dla bieżącego wiersza i dwóch wierszy powyżej. Wartości te są danymi wejściowymi dla funkcji RangeFractile(). W przypadku najniższego wiersza w tabeli poniżej jest ona zatem odpowiednikiem funkcji RangeFractile(0.5, 3,4,6), obliczającą fraktal 0,5 dla szeregu 3, 4 i 6. W przypadku pierwszych dwóch wierszy w poniższej tabeli liczba wartości w zakresie jest stosownie ograniczona, ponieważ nie ma wierszy ponad bieżącym wierszem. Podobne wyniki są zwracane w przypadku innych funkcji międzywierszowych.

MyField RangeFractile(0.5, Above(Sum(MyField),0,3))
1 1
2 1.5
3 2
4 3
5 4
6 5

Dane zastosowane w przykładach:

RangeTab:

LOAD * INLINE [

MyField

1

2

3

4

5

6

] ;