美文网首页
2018-04-08

2018-04-08

作者: 至尊狼王 | 来源:发表于2018-04-08 21:57 被阅读0次

    #-*- coding:utf-8 _*_

    __author_= 'Alex'

    import pandasas pd

    from ioimport StringIO

    from sklearnimport linear_model

    import matplotlib.pyplotas plt

    #房屋面积与价格历史数据(csv文件)

    csv_data= 'square_feet,price\n150,6450\n200,7450\n250,8450\n300,9450\n350,11450\n400,15450\n600,18450\n'

    #读入dataframe

    df=pd.read_csv(StringIO(csv_data))

    #print(df)

    #建立线性回归模型

    regr=linear_model.LinearRegression()

    #拟合(其实也就是进行数据训练)

    regr.fit(df['square_feet'].reshape(-1,1),df['price'])

    #不难得出训练后的直线的斜率、截距

    a,b=regr.coef_,regr.intercept_

    print(a)

    print(b)

    #给出待预测面积

    area=238.5

    #方式一:根据直线方程计算面积

    print(a*area+b)

    #方式二:根据predict方法预测的价格

    print(regr.predict(area))

    ###以上为算法的核心部分###

    #下面就顺水推舟画个图看下现象

    #真实的点

    plt.scatter(df['square_feet'],df['price'],color='blue')

    #画出拟合的直线

    plt.plot(df['square_feet'],regr.predict(df['square_feet'].reshape(-1,1)),color='red')

    plt.show()

    以上代码,都是在pycharm上面运行可用,参考https://blog.csdn.net/u011089523/article/details/61616053

    相关文章

      网友评论

          本文标题:2018-04-08

          本文链接:https://www.haomeiwen.com/subject/rctvhftx.html