朴素贝叶斯预测英冠联赛(比分、进球数)

上轮的英超联赛预测的很不理想,这次选取的特征向量多了一点点,但还远远不够。为了能够提高部分预测选项的准确性,这次‘分步’进行预测,选取具有共同点更多(矛盾性较小的)赛果。


整理近三个赛季的数据,并对数据进行清理和合并,最后保留数据完整的1440场比赛,如图:

朴素贝叶斯预测英冠联赛(比分、进球数)

清理并合并完成的数据框

在整个数据框中缺少总进球数、大小球等数据列,现在我们要进行添加,用于30轮英冠联赛的预测做好y(标签)。总进球数命名为TG(total_goals),这列数据很好添加,只需要主队进球(FTHG)+客队进球(FTAG),有了TG(总进球数),我们只需要使用lambda()即可确定大小球:matches['大小球'] = matches.apply(lambda r :1 if r['TG']>2.5 else 0,axis=1),大于2.5球表示为1,小于2.5球表示为0。小球755场,大球685场。

选取威廉、立博、365、Inter、Bwin为特征向量,对标签y(大小球)进行预测。先录入第30轮联赛的数据,赔率公司等

朴素贝叶斯预测英冠联赛(比分、进球数)

30轮联赛数据

朴素贝叶斯预测英冠联赛(比分、进球数)

30轮联赛数据框

整理数据,对大小球进行预测,结果见下图:

朴素贝叶斯预测英冠联赛(比分、进球数)

0小球,1大球

大小球的分布和实际情况应该差不太多,比较接近1:1,博尔顿VS布尔斯托尔城小球概率稍高一些60%,阿斯顿维拉VS伯顿大球概率稍高一些,接近60%。

数据框中含有半场主队进球(HTHG),客队进球(HTAG),全场主队进球(FTHG),客队进球(FTAG),我们现在尝试用五家赔率公司的数据去预测球队的半场和全场进球数,来和大小球进行对比,更好的确定比分或是大小球。

全场博尔顿没有进球的概率48%,全场一个进球38%,具体见下图:

朴素贝叶斯预测英冠联赛(比分、进球数)

全场主队进球数概率图

在预测客队的全场进球数,伯顿没有进球概率高达77.7%,布尔斯托尔城进两球概率42.4%。

朴素贝叶斯预测英冠联赛(比分、进球数)

全场客队进球数概率图

博尔顿VS布尔斯托尔城大概率比分0:2,利兹联VS加迪夫大概率比分1:1,这个还需要结合竞彩总进球数、比分赔率、本人的博彩习惯等进行筛选,预测结果可能会和实际赛果存在较大差距。



分享到:


相關文章: