Портал аспирантов

Портал аспирантов (http://www.aspirantura.spb.ru/forum/index.php)
-   Software (программное обеспечение) (http://www.aspirantura.spb.ru/forum/forumdisplay.php?f=107)
-   -   GNU R: Вопросы и ответы (http://www.aspirantura.spb.ru/forum/showthread.php?t=10501)

Hogfather 08.11.2013 08:58

Цитата:

Сообщение от Paul Kellerman (Сообщение 403562)
Имеет тест на 45 вопросов по 4 варианта ответа в каждом. Только один вариант верный.
Тест разбит на 3 блока по 15 вопросов. За правильные ответы на вопросы из 1-го блока
начисляется 1 балл, из 2-го блока - 2 балла, из 3-го блока - 3 балла, и соответственно,
максимальный балл, который можно набрать = 90. Определить вероятность сдачи теста,
тыкая ответы наугад, при условии, что для успешной сдачи нужна набрать минимум 61.


Итак, вернемся к нашим баранам. Собственно, решение задачи основано на знании формулы Бернулли и понимания биноминального распределения.

Функция вероятности для биноминального распределения в R имеет вид dbinom(x, size, prob, log = FALSE), остальные связанные функции:
pbinom(q, size, prob, lower.tail = TRUE, log.p = FALSE) - функция распределения
qbinom(p, size, prob, lower.tail = TRUE, log.p = FALSE) - квантили распределения
rbinom(n, size, prob) - генерация случайного числа, распределенного по данному закону
где, соответственно: size - число попыток, prob - вероятность удачного исхода

Поэтому задачу:
Цитата:

Сообщение от Paul Kellerman (Сообщение 403473)
Вот к примеру есть тупо тест тупо на 45 вопросов тупо по 4 ответа
в каждом, и только один ответ верный. Для положительной оценки
нужно минимум на 31 вопрос ответить верно. Какова вероятность
сдать его, ничего не зная, тупо тыкая наугад ответы?

можно решить двумя способами, через сложение устраивающих нас исходов испытания или как разницу между 1 и вероятностью неустраивающих нас результатов, которая равна куммулятивной сумме вероятностей исходов от 0 до 30, что соответствует значению функции распределения pbinom(30, 45, 0.25)

Код:

> sum(dbinom(31:45, 45, 0.25))
[1] 7.527228e-10
> 1-pbinom(30, 45, 0.25)
[1] 7.527228e-10

В MS Excel это считается так:
=1-БИНОМ.РАСП(30;45;0,25;ИСТИНА)
и имеем результат
7,52723E-10

Вооружившись этими немудреными знаниями приступаем к задаче. Здесь у нас существуют возможные варианты исходов от 0 до 90, но поскольку веса у каждого блока в тесте разные, проще прогнать все варианты в цикле и учесть число возможных перестановок, а также вероятность совместного события. Поскольку в данном случае события независимые, то вероятности перемножаем. По сути, мы решаем ту же задачу, только слегка усложненную.
Код:

> # Инициируем переменные
> P<-0  # Переменная для подсчета куммулятивной суммы, как увидим дальше, она лишняя. Просто для явности подсчетов для решения задачи
> Z<-data.frame(X=0:90,y=rep(0,91)) # Здесь мы будем накапливать вероятности для исходо теста 0:90
> for(i in 0:15) for (j in 0:15) for(k in 0:15) { # Перебираем возможные варианты для каждой части теста
+  Z$y[i+2*j+3*k+1]<-Z$y[i+2*j+3*k+1]+dbinom(i,15,0.25)*dbinom(j,15,0.25)*dbinom(k,15,0.25)  # считаем вероятность куммулятивно для точки
+  if(i+2*j+3*k>=61) P<-P+dbinom(i,15,0.25)*dbinom(j,15,0.25)*dbinom(k,15,0.25) # считаем для точки
+ }
> Z$cdf<-cumsum(Z$y)
> cat("Ответ на задачу составляет: ",P)
Ответ на задачу составляет:  1.73944e-08
> oldpar<-par(mfrow=c(2,1))
> plot(Z$y~Z$X,main="Функция вероятности f(x)",xlab="x",ylab="f(x)",pch=19,cex=0.8,col="blue")
> points(Z$y[62:91]~Z$X[62:91],cex=0.9,col="red",pch=19)
> text(70,0.02,expression(sum(f[i],i==61,90)==1.73944 %*% 10^{-8}))
> plot(Z$cdf~Z$X,main="Рапределения F(x)",xlab="x",ylab="f(x)",pch=19,cex=0.8,col="blue")
> abline(h=Z$cdf[61],v=60,col="darkgrey",lty=2)
> points(Z$cdf[61]~Z$X[61],cex=0.9,col="red",pch=19)
> par(oldpar)
> # Собственно, как и было сказано выше, вероятности также можно посчитать как:
> 1-Z$cdf[61]  # 1-F(60); 61, а не 60, потому как нумерация в массиве начинается с 1
[1] 1.73944e-08
> sum(Z$y[62:91]) # sum(f(t),t = 61...90)
[1] 1.73944e-08

http://aspirantura.spb.ru/forum/pict...pictureid=1391

Обращаю внимание, что функции дискретны, поэтому рисовать их сплошной линией -- фигня и моветон.

_Tatyana_ 09.11.2013 05:45

о так вот вы куда ушли с решением !
пик и есть нужный нам процент?

Hogfather 09.11.2013 11:08

Цитата:

Сообщение от _Tatyana_ (Сообщение 404329)
пик и есть нужный нам процент?

Раз есть вопросы, значит график неудачный. Перерисовал.

Итак, пик на верхнем графике соответствует 22 баллам со значением вероятности 6.315466e-02 или 6%. Т.е. случайно в 6% случаев можно ответить на 22 балла. Вообще, верхний график показывает вероятности набрать случайным образом баллы от 0 до 90. Поэтому, если нам надо посчитать вероятность не менее 61, мы складываем вероятности набрать 61,62, ... , 90 баллов (точки выделены красным) и получаем нужный нам ответ 1.73944e-08.

Нижний график показывает куммулятивную сумму вероятностей, т.е. в точке 60 (красная точка) он равен сумме вероятностей набрать баллы от 0 до 60, иными словами, значение в каждой точке показывает вероятность набрать не более заданного количества баллов. Для того, чтобы найти вероятность набрать более чем заданное количество баллов (в нашем случае 60, потому как 61>60 и по условиям задачи оно входит в вопрос), учитывая, что сумма всех вероятностей равна 1, имеем 1-F(60)=1.73944e-08

_Tatyana_ 09.11.2013 20:39

таким образом вероятнее всего будет набрать в случае случайного тыка баллов около 20, что не является проходным
а вопрос задачи был о 31 балле. распределение говорит что это три процента
правильно?

Дмитрий В. 09.11.2013 20:41

Цитата:

Сообщение от _Tatyana_ (Сообщение 404569)
а вопрос задачи был о 31 балле. распределение говорит что это три процента
правильно?

_Tatyana_, вроде бы там написано
Цитата:

Сообщение от Hogfather (Сообщение 404044)
1.73944e-08


_Tatyana_ 09.11.2013 20:42

Цитата:

Сообщение от Дмитрий В. (Сообщение 404572)
_Tatyana_, вроде бы там написано

я это не видела. а график тогда врет что ли?

Дмитрий В. 09.11.2013 20:45

Цитата:

Сообщение от _Tatyana_ (Сообщение 404573)
я это не видела. а график тогда врет что ли?

_Tatyana_, почему врет? Просто вероятность методом тыка правильно ответить на 61 балл уже мала и понижается с увеличением количества правильных вопросов. Объяснение тут:
Цитата:

Сообщение от Hogfather (Сообщение 404362)
Вообще, верхний график показывает вероятности набрать случайным образом баллы от 0 до 90. Поэтому, если нам надо посчитать вероятность не менее 61, мы складываем вероятности набрать 61,62, ... , 90 баллов (точки выделены красным) и получаем нужный нам ответ 1.73944e-08.


Hogfather 09.11.2013 20:54

Цитата:

Сообщение от _Tatyana_ (Сообщение 404569)
таким образом вероятнее всего будет набрать в случае случайного тыка баллов около 20, что не является проходным
а вопрос задачи был о 31 балле. распределение говорит что это три процента
правильно?

1. Вопрос задачи несколько другой. О 61 балле. О 31 балле более простая задача и она разбирается вначале, там другие условия (1 балл за каждый ответ в любом случае). Графика для неё я не рисовал.
Поскольку люди путаются, я подправил свой постинг.

2. Вы совершенно правы, для 31 балла примерно 3% на графике.

_Tatyana_ 09.11.2013 21:19

Цитата:

Сообщение от Hogfather (Сообщение 404589)
1. Вопрос задачи несколько другой. О 61 балле. О 31 балле более простая задача и она разбирается вначале, там другие условия (1 балл за каждый ответ в любом случае). Графика для неё я не рисовал.
Поскольку люди путаются, я подправил свой постинг.

2. Вы совершенно правы, для 31 балла примерно 3% на графике.

о теперь все ясно. а то я то помню что вроде обсуждали задачу о тридцать одном и у меня просто когнитивный случился. спасибо

Hogfather 06.12.2013 12:14

Немного о книгах по R

http://ecx.images-amazon.com/images/...SH20_OU01_.jpg

Купил себе сегодня справочник. Толковый, рекомендую. Поставил на Kindle и на смартфон. Всегда под рукой.
В книге рассматривается 100 статистических тестов (оглавление доступно по ссылке), также есть в начале предметный указатель по проверяемым гипотезам. У каждого теста описана нулевая гипотеза, требования к выборке, интерпретация результатов. Даются ссылки на последние работы в разных областях, в которых эти тесты упомянуты.
5 из 5

http://ecx.images-amazon.com/images/...4,203,200_.jpg

Отличная книжка. Есть всё, что нужно и даже больше, её уже разок упоминал выше. 5 из 5

http://ecx.images-amazon.com/images/...SH20_OU01_.jpg

Книжка послабее, есть некая сумбурность в подаче материала, но как основа очень неплохо. 5 из 5.


Текущее время: 09:48. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
© 2001—2025, «Аспирантура. Портал аспирантов»