Математическая статистика - (лекции)
p>Первый элемент любого основания равен 1, второй – номеру основания, а все последующие – сумме двух "вышестоящих".Методы вычисления моментов распределений
При вычислении моментов распределения случайных величин полезно использовать некоторые удобные (как для прямого расчета, так и для составления компьютерных программ) выражения.
· Пусть требуется просуммировать ряд чисел T1, T2, ……Tk, …Tm и мы замечаем, что они отличаются друг от друга на одну и ту же величину d, т. е. образуют арифметическую прогрессию. В этом случае полезна замена – {8–3}
Таким образом, среднее значение для ряда таких чисел составит: . {8–4} ·Для вычисления суммы чисел натурального ряда или суммы квадратов этих чисел удобны формулы:
; . {8–5}
· Если некоторая случайная величина Y может быть выражена через другую в виде Y= a·X+b, то справедливы соотношения:
M(Y) = a·M(X)+b; D(Y) = a2 · D(X). {8–6} · Если некоторая случайная величина X имеет математическое ожидание M(X) и среднеквадратичное отклонение S(X) , то "нормированная" случайная величина: {8–7} имеет нулевое математическое ожидание и единичную дисперсию.
Алгоритмы простейших статистических расчетов
Несмотря на относительную простоту, статистические расчеты требуют значительных затрат времени, повышенного внимания и, связанного с этим риска ошибок. Кроме того, в большинстве случаев практики после расчетов выборочных значений и выдвижения гипотез почти всегда приходится обращаться к статистическим таблицам, т. е. к данным классических распределений.
Большую часть этих трудностей можно преодолеть – путем использования специальных статистических программ (или целого набора – пакета прикладных программ). На сегодня программное обеспечение статистических расчетов выполнено, как правило, на уровне глобальных задач прикладной статистики, системного анализа и т. п. Надежных, простых в употреблении компьютерных программ практически нет–считается, что писать и распространять такие программы не престижно! С другой стороны, потребители таких программ–профессиональные статистики не испытывают затруднений в самостоятельном написании удобных (для себя) программ и даже пакетов. То, что есть–не хорошо и не плохо, просто это традиция и нарушать ее нет желания ни у фирм, производящих программы, ни у потенциальных пользователей.
Поэтому имеет смысл затратить некоторое время на анализ определенных трудностей, которые наверняка будут проявляться при программировании типовых статистических расчетов.
Оказывается, что здесь программиста поджидают "подводные камни", тупики и прочие неприятности, связанные не только с реальными возможностями компьютера, но и с самими формулами статистики, особенностями этой науки.
Вычисление моментов выборочных распределений
Пусть у нас имеется массив выборочных значений случайной величины и соответствующие частости (числа наблюдений) этих значений, то есть матрица из двух столбцов иm строк.
Обозначим такой массив Wи рассмотрим вопрос о вводе исходных данных. Конечно же, мы быстро сообразим, что ввод надо организовать для пар значенийXi, ni – только в этом варианте можно снизить вероятность ошибок. Вопрос об общем количестве наблюдений можно не ставить в начале диалога – освободить пользователя от необходимости вычислять N = n1 + n2 + … + nm. Организовать сигнал конца ввода не представляет проблем – скажем, ввести отрицательное число наблюдений на очередном шаге. Как организовать подготовку данных для расчета выборочных моментов – например, выборочного среднего Mx и выборочной дисперсии Dx? Среди многих вариантов наилучшим будет, пожалуй, следующий. Приготовить три контрольных величины M1, M2 и NN, предварительно присвоив им нулевые значения до начала ввода, что на языке Pascal будет выглядеть так – Var NN, I, X, Y: Integer;
W: Array [1…2, 1…m] of Integer;
M1, M2, D, S, V: Real;
M1: =0; M2: =0; NN: =0; I: = 0;
Теперь можно организовать суммирование поступающих с клавиатуры (или прямо из уже готового массива, записанного где–то на диске) выборочных данных Xi и ni. Пусть у нас такой массив уже есть, тогда с каждой очередной парой чисел следует поступить так Repeat
I: =I + 1; X: =W[I, 1]; Y: =W[I, 2];
NN: =NN+Y;
M1: =(M1+X·Y); M2: =M2+Sqr(X) ·Y
Until I < m;
Операцию надо повторять до тех пор, пока мы не достигнем конца массива (при вводе с клавиатуры– пока не будет введено отрицательное значение очередного ni).
Если ввод окончен, то далее выборочные среднее, дисперсия и коэффициент вариации
N: =NN; M1: =M1/N;
D: =M2/N – Sqr(M1); S: =Sqrt(D); If M1#0 Then V: =S/M1;
Проблема переполнения
В предыдущем примере программирования процедуры вычисления моментов была не отмечена опасность "переполнения"– суммы M1 и M2 могут выйти за "разрядную сетку" компьютера. Если такая угроза очевидна, то простейший выход из положения – вычислить предварительно общее число наблюдений N и потом выполнять описанный выше алгоритм суммирования с использованием не частостей, а частот.
Более надежным, однако, является другой подход к этой проблеме. Достаточно на каждом шаге суммирования преобразовывать "старые" значения суммM1 и M2 в "новые". Var N, NN, I, X, Y: Integer;
W: Array [1… 2, 1… m] of Integer;
А, B, M1, M2, D, S, V: Real;
M1: =0; M2: =0; N: =0; I : =0;
Repeat
I: =I + 1;
X: =W[I, 1]; NN: =N+W[I, 2]:
A: =N/NN; B: =W[I, 2]/NN;
M1: =M1·A+X·B;
M2: =M2·A+Sqr(X) ·B; N: =NN
Until I< m;
D: =M2 – Sqr(M1); V: = Sqrt(D);
If M1#0 Then V: =S/M1;
Более остро стоит проблема переполнения при вычислении факториалов, входящих в формулы вероятностей многих классических законов дискретных случайных величин. Продемонстрируем метод решения подобной проблемы при вычислении биномиальных коэффициентов.
Если нам необходимо найти k–й коэффициент бинома n–й степени, то вполне надежным будет следующий алгоритм. A: =N; B: =K; C: =1;
Repeat
C: =C·A/B; A: =A-1; B: =B-1
Until B>0;
Полезно также знать, что при достаточно больших Nвычисление факториала можно производить по формуле Стирлинга , однако приведенный алгоритм намного проще алгоритма использования этой формулы.
Моделирование законов распределения
Практика прикладной статистики невозможна без использования данных о классических, стандартных законах распределения. Чтобы избежать непосредственного использования статистических таблиц при выполнения расчетов– особенно в части проверки гипотез, можно поступить двояко. ·Ввести содержание таблиц в память компьютера (непосредственно в рабочую программу или в виде отдельного файла–приложения к этой программе). Но этого мало. Надо научить компьютер "водить пальцем по таблице", т. е. запрограммировать иногда не совсем элементарный алгоритм пользования таблицей. Работа эта хоть и занудная, но зато не требующая никаких знаний, кроме умения программировать решение корректно поставленных задач– описания пользования таблицами составлены четко и алгоритмично. ·Можно поступить более рационально. Поскольку речь идет о классических распределениях дискретных или непрерывных случайных величин, то в нашем распоряжении всегда имеются формулы вычисления вероятности (или интеграла вероятности). Бытует мнение, что программирование расчетов по формулам является чуть ли не самым низким уровнем искусства программирования. На самом же деле это не совсем так, а при программировании законов распределения вероятностей– совсем не так! Без понимания природы процесса, который порождает данную случайную величину, без знания основ теории вероятностей и математической статистики нечего и пытаться строить такие программы. Но если всё это есть, то можно строить компьютерные программы с такими возможностями статистического анализа, о которых не могли и мечтать отцы–основатели прикладной статистики. Покажем это на нескольких простых примерах. Нам уже известно, что выдвижение в качестве нулевой гипотезы о некотором стандартном законе распределения связано только с одним обстоятельством–мы можем предсказывать итоги наблюдения в условиях её справедливости. Но это предсказание невозможно без использования конкретных значений параметра (или нескольких параметров) закона. Во всех "до–компьютерных" руководствах по прикладной статистике рано или поздно приходится читать–"а теперь возьмем таблицу … и найдем для наших условий …". Хочется проверить ту же гипотезу при другом значении параметра? Нет проблем! Повтори все расчеты при этом новом значении и снова работай с таблицей.
Иными словами, в "до–компьютерную" эпоху вопрос –а что вообще можно получить из данного наблюдения (или серии наблюдений), какова максимальная информация о случайной величине заключена в этих наблюдениях, – не ставился.
Причина этого очевидна –сложность и большие затраты времени на расчеты. Но дело еще и в том, что неопределенность статистических выводов приводила к тупиковой ситуации, когда затраты на проведение сложных, требующих особого внимания и безупречной логики расчетов, могли оказаться куда больше возможного экономического выигрыша при внедрении результатов.
Поэтому сегодня, отдав должное изобретательности творцов прикладной статистики, следует ориентировать практику статистических расчетов исключительно на применение компьютерных программ.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12