Как определить вероятность с использованием стандартного отклонения в python - PullRequest
0 голосов
/ 24 марта 2020

У меня есть список студентов. У меня есть их показатели посещаемости за прошлый год и их текущая посещаемость за этот год. Я пытаюсь определить вероятность того, что к концу года их станет меньше 90%. Ниже приведены мои данные:

Name  %LastYear AttendedSoFarThisYear  SessionsSoFarThisYear  %SoFarThisYear SessionsNeeded  SessionsLeft
Ethan 97%       218                    232                    94%            52              68
Molly 91%       202                    232                    87%            101             68
Henry 95%       226                    232                    97%            44              68

Итак, на данный момент я работаю над этим, выполняя SessionsNeeded, деленное на SessionsLeft, затем умножая на 100. Так что для Этана, который с вероятностью 76%, Молли с вероятностью 148% и Генри с вероятностью 65% опустится ниже 90%.

Однако я не думаю, что такой способ определения вероятности будет очень справедливым, потому что в начале года у каждого будет очень высокий процент вероятности, поскольку они не завершили ни одной сессии. Но на самом деле я хочу, чтобы он принял во внимание их посещаемость за предыдущий год, так что в начале года у Молли будет более высокая вероятность, чем у Итана.

Также необходимо учитывать их текущие показатели посещаемости, чтобы далеко. Поскольку Генри на самом деле посещает 97% времени, вполне вероятно, что он будет продолжать это делать. В то время как у Молли чуть меньше 87%, маловероятно, что она наверстает упущенное.

У кого-нибудь есть идеи, как я могу решить эту проблему, используя эти данные? Желательно в python или даже в excel?

1 Ответ

0 голосов
/ 24 марта 2020

Вы можете оценить важность посещаемости предыдущего и текущего года, основываясь на завершении текущего года.

completion = SessionsSoFarThisYear/TotalSessionsInThisYear

Вероятность посещаемости для студента будет равна:

P_attendence(student) = LastYearAttendence(student) * (1 - completion) + ThisYearAttendence(student) * completion

Редактировать:

Следующим шагом будет исправление разницы между SessionsNeeded и SessionsLeft в зависимости от посещаемости студента P_attendance:

delta_days(student) = (SessionsLeft * P_attendance(student)) - SessionsNeeded(student)

Наконец, чтобы получить вероятность если учащийся выполнил требование о посещаемости 90%, используйте зажатую функцию logisti c с L = 1 and x0 = 0:

Logisti c Функция

P_passing(student) = 0% if delta_days(student) <= 0, else log_f(delta_days(student))

Для всех отрицательных delta_days возвращается 0% вероятности выполнения, а это означает, что при текущей оценке посещаемости студента, нет шансов на прохождение. Чем выше посещаемость (по оценкам) и чем больше дней осталось пропустить, тем выше вероятность прохождения этого года.

Edit2: Порог 90% скрыт в SessionsNeeded, используемом для вычисления delta_days.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...