Python实验——利用一元线性回归建立TV广告费用与销售额之间的回归方程

一、简介

  1. 博主是一个普普通通的大学生,没有很厉害的技术,写的内容都是不太正经的偏小白简单的,写的也是学校教过的知识消化后自己的见解,不是很学术研究的博文。
  2. 用Python外部扩展模块NumPy中数组的操作,并用NumPy、sklearn模块进行一元线性回归分析。
  3. 配置:Window 7旗舰版+64位操作系统+Anaconda3 Spyder(64-bit)
  4. 这篇博文是博主的实验报告,之所以以图片形式上传就是避免抄袭。如果有博主的师弟师妹找到这篇博文,博主想和你说这份实验报告很简单,好好看看老师给的PPT,所以不要抄!!

二、实验内容

在这里插入图片描述

三、实验步骤和结果

  1. Advertising.txt中的数据是数值型的,而readlines() 函数返回的是一个字符串列表,NumPy中可以将其中的字符串转换为浮点型,如函数numpy.float()。
  2. 实验代码:
import matplotlib.pyplot as mp
from sklearn import linear_model
import numpy as np
data_X = []
data_Y = []
fr = open('Advertising.txt')
lines = fr.readlines()
for line in lines:
    items = line.strip().split(',')
    data_X.append(np.float(items[0]))
    data_Y.append(np.float(items[1]))
length = len(data_X)
data_X = np.array(data_X).reshape([length,1])
data_Y=np.array(data_Y)
minX = min(data_X)
maxX = max(data_X)
X = np.arange(minX,maxX).reshape([-1,1])
linear = linear_model.LinearRegression()
linear.fit(data_X,data_Y)
mp.scatter(data_X,data_Y,color = 'yellow')
mp.plot(X,linear.predict(X),color = 'green')
mp.xlabel('money')
mp.ylabel('sale')
mp.show()
print('Coefficient:',linear.coef_)
print('intercept:',linear.intercept_)
x = 200
y = x*linear.coef_ + linear.intercept_
print("当TV广告投入为200时,产品销售额是:",y)
  1. 结果
    在这里插入图片描述

四、实验总结

线性回归fit函数用于拟合输入输出数据,调用形式为linear.fit(X,y, sample_weight=None):
X : x为训练向量;
Y : y为相对于X的目标向量;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值