线性回归(y=ax+b)

发布时间:2024-11-13 09:45

线性回归主要是拟合一个函数,能预测一个新的样本:

(1)数据集如下:

(2)预测值:feet=500

import matplotlib.pyplot as plt

import pandas as pd

from sklearn import linear_model

import os

os.chdir("/Users/xxx/PycharmProjects/dataset/")

filename = "input_data.xlsx"

datafile = pd.read_excel(filename, index_col=u'ID')

def get_data(datafile):

x_paramter = []

y_paramter = []

for feet,price in zip(datafile['feet'],datafile['price']):

x_paramter.append([float(feet)])

y_paramter.append(float(price))

return x_paramter,y_paramter

def linear_model_main(x_paramter,y_paramter,predict_value):

regr = linear_model.LinearRegression()

regr.fit(x_paramter,y_paramter)

predict_outcome = regr.predict(predict_value)

return regr.intercept_,regr.coef_,predict_outcome

def show_linear_line(x_paramter,y_paramter):

regr = linear_model.LinearRegression()

regr.fit(x_paramter,y_paramter)

plt.scatter(x_paramter,y_paramter,color="blue")

x_new = [[0],[500]]

plt.plot(x_new,regr.predict(x_new),color="red",linewidth=2)

plt.xlabel(u'Feet',color="green")

plt.ylabel(u'Price',color="green")

plt.ylim(-2000,20000)

plt.xlim(0,500)

plt.show()

def main():

X,Y = get_data(datafile)

print('X:',X)

print('Y:',Y)

predictvalue = [[500]]

intercept,coefficient,predict_value = linear_model_main(X,Y,predictvalue)

print("截距:",intercept)

print("斜率:",coefficient)

print("预测值:",predict_value)

show_linear_line(X,Y)

main()

(3)输出:

(4)样本以及拟合的直线

网址:线性回归(y=ax+b) https://www.yuejiaxmz.com/news/view/65685

相关内容

直线y=kx+b与直线y=
时间序列之季节性
【利用Tensorflow 实现和训练线性回归 (Linear Model)】(超级详细,附源代码)
y=x
x*y=k
由曲线y=x2与x=2,y=0所围成图形分别绕y轴旋转一周的体积为()
R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
求抛物线Y^2=2PX(P大于0)的焦点,作一直线交抛物线于A,? 爱问知识人
设T是R3的线性变换,定义为T(x,y,z)=(0,x,y),求T2的像集及核
NumPy和Pandas总结

随便看看