2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Вычисление оценки дисперсии при известном ожидании [Excel]
Сообщение20.10.2020, 18:12 
Заслуженный участник


12/07/07
4438
Не смог найти в Excel-2003 или нагуглить вычисление оценки дисперсии по выборке объёма $n$ при известном математическом ожидании $M$: $S^2 = \sum (X_i - M)^2/n$.

Сочинил функцию.
Код:
Function VarM(R As Range, M As Double) As Double
' VarM - вычисляет значение оценки дисперсии по выборке (размещённой в диапазоне R)
'      при известном математическом ожидании M
' VarM = Sum( R(i) - M)^2)/R.Count
' Пример вызова из ячейки листа.
' Пусть выборка в ячейках A1:A100, математическое ожидание равно 0.
' Вызов =VarM(A1:A100, 0)

  Dim S As Double
  S = 0
  For Each X In R
    S = S + (X - M) ^ 2
  Next
  VarM = S / R.Count
End Function
Функция вроде работает. Но может быть есть более простое решение, без использования VBA? Если без VBA нельзя, то может быть на VBA можно проще?

Upd 21.10.20 (утро). Первоначально много глупых лишних действий было. Отредактировал исходный текст. Заодно и имена сделал немного более понятными.

Upd2 21.10.20 (вечер). Без VBA можно так. В старых версиях Excel функция ДИСПР возвращает $S_1^2 = \frac 1 n \sum (X_i-\bar X)^2$, а функция СРЗНАЧ возвращает $\bar X = \frac 1 n \sum X_i$. Искомая оценка выражается через $S_1^2$ и $\bar X$: $S^2 = S_1^2 + (\bar X- M)^2$ . Таким образом, можно использовать формулу
=ДИСПР(диапазон)+(СРЗНАЧ(диапазон)-M)^2,
если макросы не нравятся (не хочется понижать уровень безопасности макросов). Возможно, использование встроенных функций будет работать быстрее, несмотря на повторное вычисление $\bar X$.
В новых версиях Excel есть функция ДИСП.Г, которая вычисляет то же, что и ДИСПР в старых версиях.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group