nono ???? 2021-12-23 16:40 采纳率: 66.7%
浏览 84
已结题

请问python建模-线性回归,每运行一次,r2值会变化吗

请问python建模-线性回归,每运行一次,r2值会变化,是正常的吗?

import pandas as pd
import xlrd
survey=pd.read_excel("D:\data\第26节数据源-survey.xlsx")
survey.head()

survey_suv=survey[survey['category']=='SUV']
survey_suv

survey_suv.corr()

import seaborn as sns
sns.heatmap(data=survey_suv.corr())

sns.scatterplot(data=survey_suv,x='price_ratio',y='price')

#创建自变量和因变量
x=survey_suv['price_ratio']
y=survey_suv['price']

#导入机器学习交叉验证包的分割模块
from sklearn.model_selection import train_test_split

#二八分,拆分过程
x_train,x_test,y_train,y_test=train_test_split(x,y,train_size=0.8,test_size=0.2)

#检查拆分结果
print('原始数据集大小:',x.shape,'训练数据集大小:',x_train.shape,'测试训练集大小:',x_test.shape)

#导入线性模型包
from sklearn.linear_model import LinearRegression

#创建模型
model=LinearRegression()

#训练模型
model.fit(x_train,y_train)

x_train

x_train=x_train.values.reshape(-1,1)
x_test=x_test.values.reshape(-1,1)
x_train

model.fit(x_train,y_train)

a=model.intercept_
b=model.coef_
a=round(float(a),2)
b=round(float(b),2)
#print('一元一次方程为:y={}{}x'.format(a,b))

r2=model.score(x_test,y_test)
r2

  • 写回答

1条回答 默认 最新

  • 八岁爱玩耍 人工智能领域新星创作者 2021-12-24 12:05
    关注

    肯定会变化,这是正常现象,是因为你没有指定随机种子,所以每次训练的参数初始化是不同的。导致分数不同

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月1日
  • 已采纳回答 12月24日
  • 创建了问题 12月23日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助