Функция вычисления процентилей.
Функция вычисления процентилей (меры расположения данных выборки или распределения) предназначена для вычисления статистических показателей распределения (децили, квартили, медиана).
Входными данными являются:
mass - упорядоченный по возрастанию динамический массив с данными выборки;
prc - вычисляемый статистический показатель в диапазоне 0.1 - 0.9.
0.1 - это первый дециль; 0.9 - девятый дециль; 0.25 - нижний квартиль; 0.75 - верхний квартиль; 0.5 - медиана.
Function Persentel(mass:array of real48; prc:real48):real48; var left,right:word; delta,DeltaBig:real48; count:word; Begin count:=Length(mass); case count of 0:Result:=0; 1:Result:=mass[count-1] else begin delta:=100/(count-1); left:=0; while left*delta/100 < prc do Inc(left); right:=left; Dec(left); DeltaBig:=(mass[right]-mass[left])/delta; Result:=mass[left]+(prc-left*delta/100)*DeltaBig*100 end end End;
Пример вызова функции для расчета девятого дециля распеределения данных, находящихся в массиве msKladcomp:
Dc9:=Persentel(msKladcomp,0.9);