Найти медиану в VBA - PullRequest
       21

Найти медиану в VBA

0 голосов
/ 01 ноября 2018

У меня небольшая проблема с поиском медианы из диапазона. К сожалению, я не могу использовать встроенную функцию Median, так как нет заданного диапазона, но переменная хранится в словаре. Я обнаружил в сети следующую функцию, которая должна возвращать медиану, но при использовании я получаю несоответствие типов «Ожидается массив или определенный пользователем тип». Вот функция:

Private Function Median(x() As Double, n As Integer) As Double
'this function calculates the median of a vector

    'Determine Median
    If n Mod 2 = 0 Then
        Median = 0.5 * (x(n / 2) + x((n + 2) / 2))
    Else
        Median = x((n + 1) / 2)
    End If

End Function

Я пытаюсь вызвать функцию так:

x = Median(v_Array(), dct(vAdd).Count)

Где V_array - массив, в котором я хотел бы сохранить значения, которые будут скопированы из словаря. Я думаю, что проблема здесь относится к части x() as Double. Как я могу вставить список значений, если значение x является двойным? Нужно ли использовать цикл для циклического перебора значений в массиве?

Ps. Если вы знаете любую другую функцию / способ получить медиану из списка значений в словаре, я был бы признателен за любую помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...