使用 SciPy 提供的普通最小二乘法分别计算 3 个特征与目标之间的一元线性回归模型拟合参数。 加载数据集 import pandas as pd data = pd.read_csv( ‘http://labfile.oss.aliyuncs.com/courses/1211/Advertising.csv’, index_col=0) data.head() 数据集包含 4 列,共 200 行。每个样本代表某超市销售相应单位件商品所需要支出的广告费用。以第一行为例,表示该超市平均销售 22.1 件商品,需要支出的电视广告费用,广播广告费用以及报刊广告费用为:230.1 美元,37.8 美元和 69.2 美元。将前 3 列视作特征,最后一列视作目标值。 计算拟合参数 import numpy as np from scipy.optimize import leastsq ### 代码开始 ### (≈ 10 行代码) m=2 def func(w, x): return w[0]+w[1]*x def err_func(w, x, y): return y-func(w, x) params_tv = leastsq(err_func,[1, 1], args=(data[‘tv’], data[‘sales’])) params_radio = leastsq(err_func,[1, 1], args=(data[‘radio’], data[‘sales’])) params_newspaper = leastsq(err_func,[1, 1], args=(data[‘newspaper’], data[‘sales’])) ### 代码结束 ### 输出: (array([7.03259358, 0.04753664]), array([9.3116381 , 0.20249578]), array([12.35140707, 0.0546931 ])) 拟合结果绘图 from matplotlib import pyplot as plt %matplotlib inline ### 代码开始 ### (≈ 10 行代码) fig, axes=plt.subplots(1, 3, figsize=(20,5)) axes[0].scatter(data[‘tv’], data[‘sales’]) axes[0].plot(data[‘tv’], func(params_tv[0], data[‘tv’]), color=’red’) axes[0].set_xlabel(‘tv’) axes[0].set_ylabel(‘sales’) axes[1].scatter(data[‘radio’], data[‘sales’]) axes[1].plot(data[‘radio’], func(params_radio[0], data[‘radio’]), color=’red’) axes[1].set_xlabel(‘radio’) axes[1].set_ylabel(‘sales’) axes[2].scatter(data[‘newspaper’], data[‘sales’]) axes[2].plot(data[‘newspaper’], func(params_newspaper[0], data[‘newspaper’]), color=’red’) axes[2].set_xlabel(‘newspaper’) axes[2].set_ylabel(‘sales’) ### 代码结束 ### (1)请给出拟合结果绘图(10分) 多元线性回归模型 使用 scikit-learn 提供的线性回归方法建立由 3 个特征与目标组成的多元线性回归模型。 计算拟合参数 from sklearn.linear_model import LinearRegression ### 代码开始 ### (≈ 4 行代码) model = LinearRegression() model.fit(data[[‘tv’, ‘radio’, ‘newspaper’]], data[‘sales’]) ### 代码结束 ### model.coef_, model.intercept_ # 返回模型自变量系数和截距项 输出: (array([ 0.04576465, 0.18853002, -0.00103749]), 2.9388893694594103) 模型检验 使用 statsmodels 库提供的相关方法来完成上面多元回归模型的拟合优度检验和变量显著性检验。 import statsmodels.api as sm x=sm.add_constant(data[[‘tv’, ‘radio’, ‘newspaper’]]) model=sm.OLS(endog=data[‘sales’], exog=x) results=model.fit() ### 代码结束 ### results.summary2() # 输出模型摘要 (2)给出模型输出结果(10分) (3)对上述实验结果进行分析(10分) 江苏开放大学 344 领5金币 问题反馈 反馈回复 推广有佣金 内容查看查看价格2 元VIP免费升级VIP立即购买申请退款 点点赞赏,手留余香 给TA打赏 0 猜你喜欢 2024年春江苏开放大学.NET平台与C#程序设计060221综合实验(第四次形考作业) 2024-05-13 某地区2021—2025年人均消费支出和收入资料如下: 2025-12-22 2026年春江苏开放大学行政管理学050004实践性环节2 3周前 案例分析:某县民政局公务员周某,有段时间不注重学习,思想觉悟逐渐落后,被人引诱参加赌博,自此迷恋赌博,赌资也越下越大,在一次赌博时被公安机关抓获,并被处以罚款。周某因为参与赌博,经常深夜才回家,所以白天上班无精打采,工作受到很大的影响,不时出错,常常被人投诉。结果,在2008年的年度考核中被确定为不称职。周某不服,遂向县监察局申诉,县监察局未予受理。周某又向县纪委申诉,县纪委亦未予受理。问:(1)县监察局和县纪委的做法对不对?为什么? (2)周某能否申诉?为什么? (3)如果可以申诉,周某应该向哪些机关申诉?为什么? 2023-10-09 2026年春江苏开放大学现代管理理论与实务050002大作业 2026-04-13 2026年春江苏开放大学建筑测量050294作业3 简答、计算与实践作业 4周前 评论0 请先 登录
评论0