Volodya Karmazin 49 Опубликовано 5 марта, 2023 Поделиться Опубликовано 5 марта, 2023 Ниже дам материал, который нужно довести до разумного завершения. Есть вот такие данные нужно их грамотно все вместе соединить чтобы оно корректно работало! Макрос для прогнозирования количества голов в матче: Sub Goal_Prediction() Dim Ro As Double, Rd As Double, We As Double Dim K As Double, W As Double, Rn As Double Ro = Range("Ro").Value Rd = Range("Rd").Value K = Range("K").Value W = Range("W").Value We = 1 / (1 + 10 ^ ((Ro - Rd) / 400)) Rn = Ro + K * (W - We) Range("Result").Value = Rn End Sub В этом макросе данные формулы Rn = Ro+K×(W – We) используются для прогнозирования количества голов в матче, где: Ro – рейтинг команды, играющей на выезде Rd – рейтинг домашней команды K – фактор, определяющий вес рейтинга W – выигрыш/проигрыш команды на последних матчах We – ожидаемая процентная вероятность победы команды на выезде Rn – прогнозируемый рейтинг команды на выезде ------------------------------------------------------------------------------------- Формула для подсчета нового рейтинга в игре зависит от нескольких факторов, включая старый рейтинг (Ro), коэффициент K, определяющий, насколько значительно влияет новый результат на рейтинг, прогнозируемый результат (We) и фактический результат (W). Формула выглядит так: Rn = Ro+K* (W – We) Здесь: Rn – новый рейтинг Ro – старый рейтинг K – коэффициент, обычно 20 W – фактический результат (1 – победа, 0.5 – ничья, 0 – поражение) We – прогнозируемый результат, который вычисляется с помощью формулы: We = 1/(1+10^((Ro – Rd)/400)), где Rd – средний рейтинг соперника. Ниже представлен макрос для прогнозирования результатов футбольного матча с использованием этой формулы. Перед запуском макроса убедитесь, что соответствующие значения Ro, Rd, K, W1, W2 введены в соответствующие ячейки листа Excel. Sub Result_Prediction() Dim Ro1 As Double, Ro2 As Double, Rd1 As Double, Rd2 As Double, We1 As Double, We2 As Double Dim K As Double, W1 As Double, W2 As Double, Rn1 As Double, Rn2 As Double Dim Lambda As Double, P As Double Dim Home As Double, Away As Double, Draw As Double Ro1 = Range("Ro1").Value Ro2 = Range("Ro2").Value Rd1 = Range("Rd1").Value Rd2 = Range("Rd2").Value K = Range("K").Value W1 = Range("W1").Value W2 = Range("W2").Value We1 = 1 / (1 + 10 ^ ((Ro1 - Rd2) / 400)) We2 = 1 / (1 + 10 ^ ((Ro2 - Rd1) / 400)) Rn1 = Ro1 + K * (W1 - We1) Rn2 = Ro2 + K * (W2 - We2) Home = Rn1 - Rn2 Away = Rn2 - Rn1 Draw = Rn1 - Rn2 MsgBox "Home team's predicted score: " & Home & vbNewLine & _ "Away team's predicted score: " & Away & vbNewLine & _ "The predicted draw score: " & Draw End Sub ----------------------------------------------------------------------------------------------------------- Для расчета вероятности P(k) по формуле P(k) = (e^-λλ^k)/k!, необходимо сначала рассчитать значение λ по формуле λ = (HA)/G, где: H – среднее количество голов, забитых командой A за последние матчи, A – среднее количество голов, пропущенных командой B за последние матчи, G – среднее количество голов, забитых командами в матчах, где играет команда A. Ниже представлен макрос для прогноза футбольных матчей, рассчитывающий значение λ и вероятности P(k) для заданного матча: scss Copy code Sub Football_Prediction() vbnet Copy code 'Заданы значения средних количеств голов и среднего количества голов в матчах, где играет команда A Dim H As Double, A As Double, G As Double 'Значение средних количеств голов и среднего количества голов в матчах, где играет команда A H = Range("H"). A = Range("A"). G = Range("G"). 'Расчет значения λ Dim lambda As Double lambda=(H*A)/G 'Задание максимального количества голов, для которого рассчитывают вероятности Dim max_goals As Integer max_goals = 5 'Расчет вероятности P(k) для каждого количества голов k Dim k As Integer Dim p As Double For k = 0 To max_goals p = Exp(-lambda)*(lambda^k) / WorksheetFunction.Fact(k) Range("P" & k).Value = p Next k End Sub ------------------------------------------------------------------------------ Формула для расчета значения коэффициента значимости фактора: z = (x – μ)/σ Sub Football_Factor_Significance() ' Значение фактора Dim x As Double x = Range("X"). ' Среднее значение фактора Dim mu As Double mu = Range("Mu"). ' Стандартное отклонение фактора Dim sigma As Double sigma = Range("Sigma"). ' Расчет значения коэффициента значимости фактора Dim z As Double z = (x – mu)/sigma ' Вывод результата Range("Z").Value = z End Sub В этом макросе вам нужно будет обновить ссылки на ячейки для значений x, mu и sigma, чтобы они соответствовали ячейкам на вашем листе, где хранятся эти значения. Макрос вычисляет значение коэффициента значимости z по предоставленной формуле и выводит результат в ячейку рабочего листа с меткой «Z». ----------------------------------------------------------------------------------------- Формула для расчета коэффициента корреляции Пирсона между двумя факторами: r = (Σ((x - μx) * (y - μy))) / (n * σx * σy) Sub Football_Correlation() ' Get data range for the two factors Dim factor1 As Range Set factor1 = Range("A2:A11") ' Change range to match your data Dim factor2 As Range Set factor2 = Range("B2:B11") ' Change range to match your data ' Calculate means Dim mean1 As Double mean1 = WorksheetFunction.Average(factor1) Dim mean2 As Double mean2 = WorksheetFunction.Average(factor2) ' Calculate standard deviations Dim stdev1 As Double stdev1 = WorksheetFunction.StDev(factor1) Dim stdev2 As Double stdev2 = WorksheetFunction.StDev(factor2) ' Calculate Pearson correlation coefficient Dim n As Integer n = factor1.Rows.Count Dim i As Integer Dim sum As Double For i = 1 To n sum = sum + ((factor1(i, 1) - mean1) * (factor2(i, 1) - mean2)) Next i Dim corr As Double corr = sum / (n * stdev1 * stdev2) ' Print result to cell Range("C1").Value = "Pearson Correlation Coefficient:" Range("C2").Value = corr End Sub В этом примере макрос предполагает, что два фактора находятся в столбцах A и B, с заголовками в строке 1 и данными, начинающимися со строки 2. Вы можете изменить диапазоны, чтобы они соответствовали вашим конкретным данным. Макрос вычисляет средние значения, стандартные отклонения и коэффициент корреляции Пирсона, используя предоставленную вами формулу, и печатает результат в ячейку C2. ------------------------------------------------------------------------------------------ 2 Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/ Поделиться на другие сайты Поделиться
Анваржон Акбаров 0 Опубликовано 5 марта, 2023 Поделиться Опубликовано 5 марта, 2023 Ох-хооо Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-305714 Поделиться на другие сайты Поделиться
SergioJek 2 110 439 Опубликовано 5 марта, 2023 Поделиться Опубликовано 5 марта, 2023 2 часа назад, Volodya Karmazin сказал: Ниже дам материал, который нужно довести до разумного завершения. Есть вот такие данные нужно их грамотно все вместе соединить чтобы оно корректно работало! Макрос для прогнозирования количества голов в матче: Sub Goal_Prediction() Dim Ro As Double, Rd As Double, We As Double Dim K As Double, W As Double, Rn As Double Ro = Range("Ro").Value Rd = Range("Rd").Value K = Range("K").Value W = Range("W").Value We = 1 / (1 + 10 ^ ((Ro - Rd) / 400)) Rn = Ro + K * (W - We) Range("Result").Value = Rn End Sub В этом макросе данные формулы Rn = Ro+K×(W – We) используются для прогнозирования количества голов в матче, где: Ro – рейтинг команды, играющей на выезде Rd – рейтинг домашней команды K – фактор, определяющий вес рейтинга W – выигрыш/проигрыш команды на последних матчах We – ожидаемая процентная вероятность победы команды на выезде Rn – прогнозируемый рейтинг команды на выезде ------------------------------------------------------------------------------------- Формула для подсчета нового рейтинга в игре зависит от нескольких факторов, включая старый рейтинг (Ro), коэффициент K, определяющий, насколько значительно влияет новый результат на рейтинг, прогнозируемый результат (We) и фактический результат (W). Формула выглядит так: Rn = Ro+K* (W – We) Здесь: Rn – новый рейтинг Ro – старый рейтинг K – коэффициент, обычно 20 W – фактический результат (1 – победа, 0.5 – ничья, 0 – поражение) We – прогнозируемый результат, который вычисляется с помощью формулы: We = 1/(1+10^((Ro – Rd)/400)), где Rd – средний рейтинг соперника. Ниже представлен макрос для прогнозирования результатов футбольного матча с использованием этой формулы. Перед запуском макроса убедитесь, что соответствующие значения Ro, Rd, K, W1, W2 введены в соответствующие ячейки листа Excel. Sub Result_Prediction() Dim Ro1 As Double, Ro2 As Double, Rd1 As Double, Rd2 As Double, We1 As Double, We2 As Double Dim K As Double, W1 As Double, W2 As Double, Rn1 As Double, Rn2 As Double Dim Lambda As Double, P As Double Dim Home As Double, Away As Double, Draw As Double Ro1 = Range("Ro1").Value Ro2 = Range("Ro2").Value Rd1 = Range("Rd1").Value Rd2 = Range("Rd2").Value K = Range("K").Value W1 = Range("W1").Value W2 = Range("W2").Value We1 = 1 / (1 + 10 ^ ((Ro1 - Rd2) / 400)) We2 = 1 / (1 + 10 ^ ((Ro2 - Rd1) / 400)) Rn1 = Ro1 + K * (W1 - We1) Rn2 = Ro2 + K * (W2 - We2) Home = Rn1 - Rn2 Away = Rn2 - Rn1 Draw = Rn1 - Rn2 MsgBox "Home team's predicted score: " & Home & vbNewLine & _ "Away team's predicted score: " & Away & vbNewLine & _ "The predicted draw score: " & Draw End Sub ----------------------------------------------------------------------------------------------------------- Для расчета вероятности P(k) по формуле P(k) = (e^-λλ^k)/k!, необходимо сначала рассчитать значение λ по формуле λ = (HA)/G, где: H – среднее количество голов, забитых командой A за последние матчи, A – среднее количество голов, пропущенных командой B за последние матчи, G – среднее количество голов, забитых командами в матчах, где играет команда A. Ниже представлен макрос для прогноза футбольных матчей, рассчитывающий значение λ и вероятности P(k) для заданного матча: scss Copy code Sub Football_Prediction() vbnet Copy code 'Заданы значения средних количеств голов и среднего количества голов в матчах, где играет команда A Dim H As Double, A As Double, G As Double 'Значение средних количеств голов и среднего количества голов в матчах, где играет команда A H = Range("H"). A = Range("A"). G = Range("G"). 'Расчет значения λ Dim lambda As Double lambda=(H*A)/G 'Задание максимального количества голов, для которого рассчитывают вероятности Dim max_goals As Integer max_goals = 5 'Расчет вероятности P(k) для каждого количества голов k Dim k As Integer Dim p As Double For k = 0 To max_goals p = Exp(-lambda)*(lambda^k) / WorksheetFunction.Fact(k) Range("P" & k).Value = p Next k End Sub ------------------------------------------------------------------------------ Формула для расчета значения коэффициента значимости фактора: z = (x – μ)/σ Sub Football_Factor_Significance() ' Значение фактора Dim x As Double x = Range("X"). ' Среднее значение фактора Dim mu As Double mu = Range("Mu"). ' Стандартное отклонение фактора Dim sigma As Double sigma = Range("Sigma"). ' Расчет значения коэффициента значимости фактора Dim z As Double z = (x – mu)/sigma ' Вывод результата Range("Z").Value = z End Sub В этом макросе вам нужно будет обновить ссылки на ячейки для значений x, mu и sigma, чтобы они соответствовали ячейкам на вашем листе, где хранятся эти значения. Макрос вычисляет значение коэффициента значимости z по предоставленной формуле и выводит результат в ячейку рабочего листа с меткой «Z». ----------------------------------------------------------------------------------------- Формула для расчета коэффициента корреляции Пирсона между двумя факторами: r = (Σ((x - μx) * (y - μy))) / (n * σx * σy) Sub Football_Correlation() ' Get data range for the two factors Dim factor1 As Range Set factor1 = Range("A2:A11") ' Change range to match your data Dim factor2 As Range Set factor2 = Range("B2:B11") ' Change range to match your data ' Calculate means Dim mean1 As Double mean1 = WorksheetFunction.Average(factor1) Dim mean2 As Double mean2 = WorksheetFunction.Average(factor2) ' Calculate standard deviations Dim stdev1 As Double stdev1 = WorksheetFunction.StDev(factor1) Dim stdev2 As Double stdev2 = WorksheetFunction.StDev(factor2) ' Calculate Pearson correlation coefficient Dim n As Integer n = factor1.Rows.Count Dim i As Integer Dim sum As Double For i = 1 To n sum = sum + ((factor1(i, 1) - mean1) * (factor2(i, 1) - mean2)) Next i Dim corr As Double corr = sum / (n * stdev1 * stdev2) ' Print result to cell Range("C1").Value = "Pearson Correlation Coefficient:" Range("C2").Value = corr End Sub В этом примере макрос предполагает, что два фактора находятся в столбцах A и B, с заголовками в строке 1 и данными, начинающимися со строки 2. Вы можете изменить диапазоны, чтобы они соответствовали вашим конкретным данным. Макрос вычисляет средние значения, стандартные отклонения и коэффициент корреляции Пирсона, используя предоставленную вами формулу, и печатает результат в ячейку C2. ------------------------------------------------------------------------------------------ GPT чат изнасиловали? Сами проверяли работоспособность? Он обычно выдает общее и потом нужно все "допиливать". GPT чат хорош только общими мыслями и направлениями как библиотека и и ничего больше 1 Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-305792 Поделиться на другие сайты Поделиться
Volodya Karmazin 49 Опубликовано 5 марта, 2023 Автор Поделиться Опубликовано 5 марта, 2023 7 минут назад, SergioJek сказал: GPT чат изнасиловали? Сами проверяли работоспособность? Он обычно выдает общее и потом нужно все "допиливать". GPT чат хорош только общими мыслями и направлениями как библиотека и и ничего больше Именно так, суть в том если бы я имел какое-то понятие как это реализовать то бы это делал сам а так дал материал с которым можно попробовать что-то сделать, конечно если это кому-то будет интересно! Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-305800 Поделиться на другие сайты Поделиться
Администраторы InfinityBook 100 088 Опубликовано 5 марта, 2023 Администраторы Поделиться Опубликовано 5 марта, 2023 не насилуйте ИИ))) а если собрались то и доводите до конца Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-305912 Поделиться на другие сайты Поделиться
Ommm23 0 Опубликовано 6 марта, 2023 Поделиться Опубликовано 6 марта, 2023 Как то тоже мне он ответил смешав с разных источников всё в одну кучу. В итоге ничего рабочего не слепил. Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-306212 Поделиться на другие сайты Поделиться
Chislovoy 13 Опубликовано 18 марта, 2023 Поделиться Опубликовано 18 марта, 2023 Это формула Эло для футбола..Толку с нее нет.А тут он ее еще и к голам напрогнозил Всякие рейтинги формы и XG все это нерабочее фуфло..... Нужны действительно крутые алгоритмы ИИ, типа распознавания образов, векторные типа ODDs Wizard и т д не для наших умов)) Цитата Ссылка на комментарий https://brcbet.com/topic/272222-ochumelye-ruchki/#findComment-312491 Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.