Генерация случайных чисел с нормальным распределением.

Аватара пользователя

Автор темы
texadmin
Администратор
Сообщения: 4075
Стаж: 5 лет 10 месяцев
Поблагодарили: 516 раз
Пол:

Генерация случайных чисел с нормальным распределением.

Непрочитанное сообщение texadmin »

При работе иногда возникает необходимость сгенерировать набор значений.
(скажем, хотите потренироваться в расчётах с новой методикой, а данных пока нет)
1. Вы берёте цифры из головы
2. Вы генерируете их в Excel, например, =случмежду(1;1000)
И в первом, и во втором случае нормального распределения не получится «для тех, кто знает, что это такое»
Пример генерации случайных чисел в Excel с нормальным распределением:
1. функция =СЛЧИС() сгенерирует случайное число от 0 до 1 «в следующей формуле называется вероятность»
2. функция =НОРМОБР(вероятность;среднее;стандартное_откл). Здесь описание функции боле- менее понятно.
При каждом обновлении вы получаете новое значение.
Например, вам надо получить 100±10
=СЛЧИС() -это вероятность
10/2 для (P=95)
=НОРМОБР(СЛЧИС();100;5)
Ниже пример, в также нем есть мой вариант округления результатов при расчётах в Excel для лабораторий.
Вложения
Нормальное распределение.xlsx
(12.55 КБ) 611 скачиваний
distribution.jpg

Теги:
Аватара пользователя

Дневной бродяга

Генерация случайных чисел с нормальным распределением.

Непрочитанное сообщение Дневной бродяга »

Спасибо Вам огромное!

dats
 
 
Сообщения: 28
Стаж: 5 лет 6 месяцев
Поблагодарили: 9 раз

Генерация случайных чисел с нормальным распределением.

Непрочитанное сообщение dats »

Можно еще вот так:

Excel - Данные - Анализ данных - Генерация случайных чисел.
И далее выбираем распределение - нормальное, указываем требуемое количество чисел, среднее и СКО.

Если не можете найти "анализ данных", то надо включить надстройку "Пакет анализа", в Excel 2010 вот так:
Откройте вкладку Файл, нажмите кнопку Параметры и выберите категорию Надстройки. В раскрывающемся списке Управление выберите пункт Надстройки Excel и нажмите кнопку Перейти. В диалоговом окне Надстройки установите флажок Пакет анализа, а затем нажмите кнопку ОК.
После этого "анализ данных появится".
Изображение
Аватара пользователя

Автор темы
texadmin
Администратор
Сообщения: 4075
Стаж: 5 лет 10 месяцев
Поблагодарили: 516 раз
Пол:

Неслучайная случайность

Непрочитанное сообщение texadmin »

С помощью компьютера за последние несколько лет я сгенерировал порядка 200 000 000 000 случайных значений (хобби).
Периодически мне попадаются заметки как исследователи сталкиваются с ограничениями при генерации случайных чисел.
Например: компьютер не может генерировать именно случайные числа; одни случайные числа лучше других; чуть ли не спецслужбы финансируют создание генераторов для своих корыстных целей, а проверить насколько ваша случайность - случайна, выходит далеко за рамки любительского интереса.
Не забудем что нам бы что бы и работало быстро.
Приведу пример как я борюсь с ДЕТЕРМИНАЦИЕЙ, :biggrin Пример формул для excel: например надо генерировать 10 случайных значений, в случайном порядке расставляю формулы.
Вариант 1
=ОСТАТ(СЛЧИС()+СЛЧИС();1)
Вариант 2
=ЕСЛИ(СЛУЧМЕЖДУ(0;1)=1;СЛЧИС();1-СЛЧИС())расширенное применение формулы 2

для нормального распределения
Вариант 1
=НОРМ.ОБР(ОСТАТ(СЛЧИС()+СЛЧИС();1);0;1)
Вариант 2
=НОРМ.ОБР(ЕСЛИ(СЛУЧМЕЖДУ(0;1)=1;СЛЧИС();1-СЛЧИС());0;1)
Аватара пользователя

Автор темы
texadmin
Администратор
Сообщения: 4075
Стаж: 5 лет 10 месяцев
Поблагодарили: 516 раз
Пол:

Для скептиков СЛЧИС()

Непрочитанное сообщение texadmin »

Ну я космополит, поэтому думаю что надо бы догнать, а там уже развивать.
Всякие статейки по статистке пишу здесь, не потому что это прям потребность нашей метрологии, а ресурс принадлежит мне, и я имею контроль над сохранностью текста. Вообще мне интересно.
К теме.
Сегодня было несколько высказываний (не здесь), что генератор случайных чисел, (в том числе в excel ), ну не как не заслуживает доверие, что не бывает специально сгенерированных случайных чисел, и.т.д. И как бы это всё ставит по сомнение, мои наработки, а их очень много, я даже десятую часть не могу оформить.
Отвечаю
Подобный скепсис, я принимаю только от людей которые работали с случайными числами. Я же раз пять, погружался в эту тему, периодический почитываю статьи, ищу информацию. Да не всё там понимаю, да в основном для меня там не формулы а заклинания, но уверен что все скептики даже 1/100 части не прочитали того что я прочитал.
Выкладываю расширенную версию моих приёмов по увеличению детерминации. Для каждого числа в выборке прописываем формулу -

ABS(СЛЧИС()-СЛУЧМЕЖДУ(0;1))
ABS(ОСТАТ(СЛЧИС()+СЛЧИС();1)-СЛУЧМЕЖДУ(0;1))
ABS(ОСТАТ(СЛЧИС()+СЛЧИС()+СЛЧИС();1)-СЛУЧМЕЖДУ(0;1))
ABS(ОСТАТ(СЛЧИС()+СЛЧИС()+СЛЧИС()+СЛЧИС();1)-СЛУЧМЕЖДУ(0;1))
ABS(ОСТАТ(СЛЧИС()+СЛЧИС()+СЛЧИС()+СЛЧИС()+СЛЧИС();1)-СЛУЧМЕЖДУ(0;1))
...
...
...
Как это работает
-СЛУЧМЕЖДУ(0;1) - в формулах делает вашу последовательность симметричной и увеличивает период.
СЛЧИС()+СЛЧИС() каждая +СЛЧИС() как бы создаёт свой уникальный алгоритм вычисления случайной величины.
Например у вас есть некий провал между 0,3 и 0,35. СЛЧИС()+СЛЧИС() как бы размажут его на гармоники, а СЛЧИС()+СЛЧИС()+СЛЧИС() уже не будет похож на предыдущий, или например последовательность ОСТАТ(СЛЧИС()+СЛЧИС();1) не может повторить ОСТАТ(СЛЧИС()+СЛЧИС()+СЛЧИС();1) даже если СЛЧИС() повторяется, ну и т.д
Вообще мне кажется это избыточно, но почему бы нет.
:оригинальный текст
Аватара пользователя

cordek
Партнёр форума
Сообщения: 1878
Стаж: 5 лет 7 месяцев
Поблагодарили: 623 раза

Генерация случайных чисел с нормальным распределением.

Непрочитанное сообщение cordek »

Как правило скептицизм в отношении генератора случайных чисел появляется из-за статей в интернете, в которых приводится мнение, что последовательность случайных чисел не случайна, и из-за этого страдает криптография.
Но на самом деле отклонения от случайного перебора чисел выявляются на последовательностях в миллионы знаков.
Валидация и внедрение ПО для лабораторий.
email:cordek @ yandex .ru
https://t.me/limsaccreditation
Аватара пользователя

Автор темы
texadmin
Администратор
Сообщения: 4075
Стаж: 5 лет 10 месяцев
Поблагодарили: 516 раз
Пол:

Генерация случайных чисел с нормальным распределением.

Непрочитанное сообщение texadmin »

Там нюансов много, насколько я понял в VBA не очень хороший генератор, а в excel в одном месте встречал что там генератор от c++ что то ляляля 32, в другом что использует чуть ли не конфигурацию вашего ПК, (например свободное место на жёстком диске), так что последовательность не повторится.
В общем я не замечал что именно в excel это приносит проблемы.
Слишком многогранный вопрос, вопрос алгоритмы до сих пор разрабатывают, и тут нюансов всех не обсудить, без нас полно мнений.
Тестирование псевдослучайных последовательностей

Вернуться в «Статьи»