LinearRegression
是线性回归模型的实现类;
train_test_split
用于将数据集分成训练集和测试集;
cross_val_score
用于交叉验证;
r2_score
用于评估模型在测试集上的预测性能。
- 计算各个特征之间的相关系数,并打印输出
corr_matrix = df.corr() print(corr_matrix)
使用 corr()
方法计算各个特征之间的相关系数,并打印输出。
- 挑选出与期末成绩相关性较高的特征进行分析
X = df[['Midterm', 'Quiz']] Y = df['Final']
选取 Midterm
和 Quiz
两个特征作为自变量 X
,选取 Final
作为因变量 Y
。
- 划分训练集和测试集
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2)
使用 train_test_split
方法将数据集划分成训练集和测试集,并按照 8:2 的比例划分,其中测试集占比为 20% 。
- 建立线性回归模型并进行交叉验证
model = LinearRegression() scores = cross_val_score(model, X_train, Y_train, cv=3)
使用 LinearRegression()
创建一个线性回归模型,并使用 cross_val_score
进行 3 折交叉验证,并将分数保存在 scores
中。
- 在测试集上进行预测并评价模型性能
model.fit(X_train, Y_train) Y_pred = model.predict(X_test) r2 = r2_score(Y_test, Y_pred)
使用 fit
方法在训练集上拟合数据,使用 predict
方法在测试集上进行预测,使用 r2_score
方法评估模型在测试集上的预测性能。
- 使用模型预测某个学生在期末考试中的成绩
X_new = [[80, 90]] Y_new = model.predict(X_new)
文章来源:https://www.toymoban.com/news/detail-455944.html
构造一个 X_new
数据,包含期中考试成绩为 80 分、小测成绩为 90 分的一位学生,并使用以上步骤训练出来的模型进行预测。文章来源地址https://www.toymoban.com/news/detail-455944.html
到了这里,关于线性回归模型分析学生成绩的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!