失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python双色球-(三)线性回归预测

python双色球-(三)线性回归预测

时间:2022-07-10 11:49:09

相关推荐

python双色球-(三)线性回归预测

参考了其他大神的代码,通过历史数据训练线性回归模型,然后给出预测值,但是这预测看起来并不那么准,只是应用线性回归模型的一个示例,如果需要更好更精确的结果,还需要不断地调整,不断地尝试各种算法模型,相信总有一款模型能靠近500W俱乐部。

print('预测开始了')"""取读历史数据,指定标识"""def get_lotto_data(data, lotto, lotto_id):data['lotto_id'] = lotto_idX = []Y = []# single_square_feet, single_price_valuefor s, p in zip(data['lotto_id'], data[lotto]):X.append([float(s)])Y.append(float(p))return X, Y# 训练线性回归模型def linear_model_test(X, Y, predict_value):regr = linear_model.LinearRegression()regr.fit(X, Y)predict_outcome = regr.predict(predict_value)predictions = {}predictions['intercept'] = regr.intercept_predictions['coefficient'] = regr.coef_predictions['predicted_value'] = predict_outcomereturn predictions"""使用线性回归推测中奖号码"""def get_predicted_num(file, lotto, lotto_id, num):X, Y = get_lotto_data(file, lotto, lotto_id)predict_value = [[33]]result = linear_model_test(X, Y, predict_value)print("num", num,'Intercept value', result['intercept'],'Coefficient', result['coefficient'],'Predicted value', result['predicted_value'])columns = {'date': str,'id': str, # 期数'r1': int, # 红1'r2': int, # 红2'r3': int, # 红3'r4': int, # 红4'r5': int, # 红5'r6': int, # 红6'b1': int, # 蓝1}LoadPath = f'DoubleBall.xlsx'book=load_workbook(LoadPath, data_only=True)#加载已有Excel文档sheet_result=book['Sheet']results = []cnt = 0for i in sheet_result:if cnt > 0:dit = {}cnt = 1dit['id'] = i[1].valuedit['date'] = i[0].valuedit['r1'] = i[2].valuedit['r2'] = i[3].valuedit['r3'] = i[4].valuedit['r4'] = i[5].valuedit['r5'] = i[6].valuedit['r6'] = i[7].valuedit['b1'] = i[8].valueresults.append(dit)cnt+=1df = pd.DataFrame(columns=columns, data=results)df = df.sample(100)# 使用线性回归模型进行预测 get_predicted_num(df, 'r1', 1, 5) # 预测红球1get_predicted_num(df, 'r2', 2, 10) # 预测红球2get_predicted_num(df, 'r3', 3, 15) # 预测红球3get_predicted_num(df, 'r4', 4, 20) # 预测红球4get_predicted_num(df, 'r5', 5, 24) # 预测红球5get_predicted_num(df, 'r6', 6, 29) # 预测红球6get_predicted_num(df, 'b1', 7, 9) # 预测蓝球1print('预测结束了')

如果觉得《python双色球-(三)线性回归预测》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。