Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Теория вероятностей и математическая статистика в 2 частях. Ч.2. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
1 Мб
Скачать

}

#Применяем функцию fun для каждой случайной выборки (столбца all_samples)

sum_rand = apply ( all_samples, 2, function ( arg ) fun ( v = arg [1:19], x = arg [20] ) )

#Определяем число удачных экспериментов

tt_rand = sum (sum_rand <= 20)

# И делим его на общее число экспериментов tt_rand / 10^6

101

Приложение Ж

#Задача 7. Расчет вероятности того, что хотя бы кто-то угадает код, если группа состоит из i пользователей, и на каждую группу приходится i разных вариантов перебираемого кода

rr=0

for (i in 1:10000){ rr[i]=1- ((i-1)/i)^i}

#Отображение на графике

plot (rr)

#Задача 8. Геометрическая интерпретация задачи о неуклюжем химике plot(c(0,9),c(9,0),xaxs="i",yaxs="i",type="l",axes=FALSE,xlab="x",ylab="y") axis(1, at = 0:9, 0:9)

axis(2, at = 0:9, 0:9)

polygon(c(0,0,3,6,3,0), c(0,3,6,3,0,0), density = 10) abline ( c(6.5, -1), lwd = 2, lty = 2)

#Генерируем 105 значений координат одного разлома

sample_x = runif (10^5, 0, 9)

#Генерируем 105 значений координат другого разлома sample_y = runif (10^5, 0, 9)

#Для каждой случайной выборки проверяем условие usl = abs (9 - sample_y - sample_x) <= 3

#Искомая вероятность

sum (usl) / 10^5

102

Приложение И

## Задача 9. Все комбинации случайного кода all_var = combn ( 0:9, 6 )

#Произведение цифр каждого возможного кода all_prod = apply ( all_var, 2, prod )

#Таблица с числом благоприятных исходов для каждого произведения mk = table (all_prod)

#Функция для вычисления слагаемых в формуле вероятности

term = function (k, j, l) {

k * j * l / 210^2 / (210 - j) * (210 - k - j - l) / (210 - j - l)}

#Функция, вычисляющая сумму term для всех перестановок трех элементов

term_permut = function (x) {

k = x [c (1, 1, 2, 2, 3, 3)]; j = x [c (2, 3, 1, 3, 1, 2)]; l = x [ c (3, 2, 3, 1, 2, 1)] sum ( term (k, j, l) )}

#Применяем функцию term_permut ко всем комбинациям трех элементов из mk

result = combn ( mk, 3, term_permut)

#Искомая вероятность

PA = 1 - sum (result)

#Второй способ решения (с учетом повторяющихся комбинаций)

#Функция для генерации размещений с повторениями из элементов n по k

razm = function (n, k) { rr = NULL

for (i in 1:k) rr = cbind (rr, rep (1:n, each = n^(k - i) ) ) rr}

#Все способы разместить 1, 2, 3 на трех позициях

r33 = razm (3, 3)

#Все способы разместить 1, 2, 3 на двух позициях r32 = razm (3, 2)

#Все уникальные варианты комбинаций из трех элементов из mk

mk_uniq = rbind (r33, cbind (126, r32), cbind (r32[,1], 126, r32[,2]), cbind (r32, 126))

# Функция, вычисляющая число повторений nkjl уникальных комбина-

ций

n_kjl = function (x) { s = rep (1, 3)

# Проверяем, есть ли единицы x1 = x == 1

103

#Одной единице соответствует 39 повторений, двум – 39∙38, трем –

39∙38∙37

if ( sum(x1)!= 0 ) s [x1] = 39: (40 - sum(x1)) x2 = x==2

if ( sum(x2)!= 0 ) s [x2] = 18: (19 - sum(x2)) x3 = x==3

if ( sum(x3)!= 0 ) s [x3] = 3: (4 - sum(x3)) prod(s)}

#Применяем функцию n_kjl ко всем уникальным вариантам комбина-

ций mk_uniq

num = apply (mk_uniq, 1, n_kjl)

#Вычисляем term для всех уникальные варианты комбинаций из mk_uniq

s_kjl = term (mk_uniq [, 1], mk_uniq [, 2], mk_uniq [, 3])

#Искомая вероятность

PA = 1 - sum (num * s_kjl)

104

Приложение К

## Задача 10. Проверка моделированием

#Генерируем 106 случайных выборок с возращением 11 элементов из

7

rand_samples = replicate ( 10^6, sample (7, 11, replace = TRUE) )

#Для каждой выборки определяем индикатор того, что собран полный комплект

compl = apply (rand_samples, 2, function(x) prod(1:7 %in % x) )

#Вычисляем вероятность по статистическому определению

sum (compl) / 10^6

#Функция для вычисления вероятности по классическому определению

prob_task10 = function (n, k) {

1 - sum ( ( c(1,-1) * (n - 1:n) / n)^k * choose (n, 1:n) )

}

#Вычисляем вероятность при n = 7 и k = 11

prob_task10 (7, 11)

105

Приложение Л

## Задача 11. Расчет числа благоприятных исходов m по соотношению

(29) N = 22 lk = 1

for (i in 2: (N-1)){

lk [i] = choose (2*i, i+1) - sum (lk*choose (2*length(lk):1, length(lk):1) )

}

lk = c(1, lk)

mk = choose ( 2*N-2*0:(N-1), N - 0:(N-1)) m = sum(lk*mk)

n = choose ( 2*N+1, N)

#Искомая вероятность m / n

#Проверка моделированием v = c ( rep (0, 22), rep (1, 23) ) result = function () {

x = sample (v, 45) bul2 = cumsum (x)

razn = bul2 [ c (FALSE, TRUE) ] - 1:22 sum (razn==0)!=0

}

rand_samples = replicate (10^5, result () )

#Искомая вероятность

sum (rand_samples) / 10^5

106

ОГЛАВЛЕНИЕ

 

Введение...................................................................................................................

3

1. Начало работы в статистической среде R..........................................................

5

1.1. Типы данных..................................................................................................

6

1.2. Операции и функции .....................................................................................

9

1.3. Логические и условные операторы............................................................

12

1.4. Извлечение данных......................................................................................

13

1.5. Циклы............................................................................................................

15

1.6. Создание пользовательских функций........................................................

16

2. Примеры решения задач....................................................................................

19

2.1. А те же ли это студенты? ............................................................................

21

2.2. Нетерпеливые дуэлянты..............................................................................

26

2.3. Случайная стрельба по мишени .................................................................

30

2.4. Есть ли шанс списать тест?.........................................................................

39

2.5. Игра «крэпс».................................................................................................

47

2.6. И снова бесконечное подбрасывание кубика............................................

56

2.7. Угадывание случайного кода......................................................................

63

2.8. Неуклюжий химик.......................................................................................

67

2.9. Угадывание произведения цифр.................................................................

70

2.10. Купоны в коробках ....................................................................................

82

2.11. Вынимаем бюллетени................................................................................

89

Список литературы................................................................................................

93

Приложения............................................................................................................

94

107

Тимофеева Анастасия Юрьевна

ТЕОРИЯ ВЕРОЯТНОСТЕЙ И МАТЕМАТИЧЕСКАЯ СТАТИСТИКА

ЧАСТЬ 2

Учебное пособие

Редактор М.О. Мокшанова

Выпускающий редактор И.П. Брованова Дизайн обложки А.В. Ладыжская Компьютерная верстка Л.А. Веселовская

Налоговая льгота – Общероссийский классификатор продукции Издание соответствует коду 95 3000 ОК 005-93 (ОКП)

___________________________________________________________________________________

Подписано в печать 07.12.2017. Формат 60 × 84 1/16. Бумага офсетная. Тираж 60 экз. Уч.-изд. л. 6,27. Печ. л. 6,75. Изд. № 365/16. Заказ № 41. Цена договорная

___________________________________________________________________________________

Отпечатано в типографии Новосибирского государственного технического университета

630073, г. Новосибирск, пр. К. Маркса, 20

108

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]