目录

一、分析数据

数据:

二、拆分训练集和预测集

1、构建训练集和预测集

2、拆分

三、训练模型

四、开始预测

五、评价

六、散点图显示家庭收入中位数和房价中位数的分布


一、分析数据

import pandas as pd #导入“Pandas”,用于数据读取和处理
#读入房价数据 read_csv()
df_housing = pd.read_csv("../data/house.csv")
#显示加州房价数据
df_housing # df_housing.head 只显示一部分数据

数据:

17000条数据 (8个属性(特征)-影响房价的因素)

第九个是标签

longitude 经度

latitude 纬度

housing_median_age 房龄中位数

。。。。

这是加州各地区房价的整体统计信息(不是一套套房子的价格信息),是1990年的人口普查结果之一,共包含17 000个样本。其中包含每一个具体地区的经度(longitude)、纬度(latitude)、房屋的平均年龄(housing_median_age)、房屋数量(total_rooms)、家庭收入中位数(median_income)等信息,这些信息都是加州地区房价的特征。

数据集最后一列“房价中位数”(median_house_value)是标签。这个机器学习项目的目标,就是根据已有的数据样本,对其特征进行推理归纳,得到一个函数模型后,就可以用它推断加州其他地区的房价中位数。

二、拆分训练集和预测集

1、构建训练集和预测集

然后构建特征数据集X和标签数据集y,如下段代码所示。

在机器学习领域,似乎有一种习惯是把特征集X大写,把标签集y小写

因为最后一列是标签,所以我们去掉最后一列,其余的作为训练集X

#median_house_value 为csv文件中的最后一列
#构建特征集X
#drop 去掉最后一列,作为特征集X
# drop 默认删除行,删除列的话加上 “axis=1”
X = df_housing.drop("median_house_value",axis = 1)
#构建标签集y
#将最后一列赋给y
y = df_housing.median_house_value

y的部分数据如下:

2、拆分

#random_state  随机数种子,不同的随机数种子划分的结果不同

from sklearn.model_selection import train_test_split #导入数据集拆分工具
X_train, X_test, y_train, y_test = train_test_split(X, y,test_size=0.2, random_state=0) #以80%/20%的比例进行数据集的拆分

输出如下:可以看到被打乱了顺序

三、训练模型

# from sklearn.linear_model import SomeClassifier
from sklearn.linear_model import LinearRegression #导入线性回归算法模型
model = LinearRegression() #使用线性回归算法
model.fit(X_train, y_train) #用训练集数据,训练机器,拟合函数,确定参数
print(model.coef_,model.intercept_)
model.coef_:斜率 正值说明正相关,负值说明负相关
model.intercept_:截距(用的默认的----fit_intercept=True)

四、开始预测

y_pred = model.predict(X_test) #预测测试集的Y值
# print ('房价的真值(测试集)',y_test)
y_test

输出如下:


# print ('预测的房价(测试集)',y_pred)
y_pred

输出如下:

五、评价

# score 打分
print("给预测评分:", model.score(X_test, y_test)) #评估预测结果

输出如下:

给预测评分: 0.6321014171579477

越接近1说明拟合的方程越好

六、散点图显示家庭收入中位数和房价中位数的分布

import matplotlib.pyplot as plt #导入”matplotlib画图库“
plt.scatter(X_test.median_income, y_test,  color='brown')
#画出回归函数(从特征到预测标签)
plt.plot(X_test.median_income, y_pred, color='green', linewidth=1)
plt.xlabel('Median Income') #X轴-家庭收入中位数
plt.ylabel('Median House Value') #Y轴-房价中位数
plt.show() #显示房价分布和机器习得的函数图形

【机器学习】线性回归之加州房价预测相关推荐

  1. 机器学习入门实例-加州房价预测-1(数据准备与可视化)

    问题描述 数据来源:California Housing Prices dataset from the StatLib repository,1990年加州的统计数据. 要求:预测任意一个街区的房价 ...

  2. scikit-learn线性回归实践 - 波斯顿房价预测

    Educoder实训平台机器学习-线性回归:scikit-learn线性回归实践 - 波斯顿房价预测 (下方代码已成功通过平台测试) 文章目录 机器学习:波士顿房价数据集 任务描述 相关知识 Line ...

  3. Python建立线性回归模型进行房价预测

    Python建立线性回归模型进行房价预测 前期准备 多因子房价预测 实战流程 1.数据加载 2.数据可视化 3.数据预处理 4.模型建立与训练 5.模型预测 6.模型评估 7.房价预测 数据与代码 前 ...

  4. 使用线性回归实现波士顿房价预测

    使用线性回归实现波士顿房价预测 本文不进行线性回归基础知识讲解,只提供三种方法对波士顿房价进行预测,这三种方法分别是: 1.使用正规方程的优化方法对波士顿房价进行预测 2.使用梯度下降的优化方法对波士 ...

  5. 东北大学大数据班机器学习大作业——印度房价预测

    目录 1.项目背景. 3 2.实验描述. 3 3.实验目的. 3 4.实验环境. 3 5.实验原理. 4 5.1 决策树. 4 5.2 随机森林. 4 5.3 数据预处理与特征工程. 4 5.4 主成 ...

  6. 机器学习项目实践——波士顿房价预测

    基于线性回归预测波士顿房价 摘要:分类和回归属于机器学习领域有监督学习算法的两种方法,有监督学习是通过已有的训练样本去训练得到一个模型,再使用这个模型将所有的输入映射到相应的输出,若输出结果是离散型称 ...

  7. 基于线性回归的波士顿房价预测

    折线图代码 #-*-coding:utf-8-*- import pandas as pd import numpy as np import matplotlib.pyplot as plt #加载 ...

  8. 线性回归实战【房价预测】

    前言 本文属于 线性回归算法[AIoT阶段三],这里截取自其中一段内容,方便读者理解和根据需求快速阅读.本文通过公式推导+代码两个方面同时进行,因为涉及到代码的编译运行,如果你没有 NumPyNumP ...

  9. 一元线性回归python示例——房价预测

    假设房价只有面积一个影响因素,根据下列数据集建立线性回归模型,并预测面积为700平方英尺的房子价格. No square_feet price 1 150 6450 2 200 7450 3 250 ...

  10. 机器学习入门实战---波士顿房价预测

    波士顿房价预测 波士顿房价数据集介绍 波士顿房价数据说明:此数据源于美国某经济学杂志上,分析研究波士顿房价( Boston HousePrice)的数据集.数据集中的每一行数据都是对波士顿周边或城镇房 ...

最新文章

  1. 通俗易懂的Go协程的引入及GMP模型简介
  2. 揭秘人工智能、机器学习和深度学习的神秘面纱
  3. shell脚本编写乘法口诀
  4. Java中泛型的各种使用
  5. CI中PHP写法规范(不断更新)
  6. nylgACM_105_九的余数
  7. 机器学习基础-聚类算法-15
  8. 牛客练习赛44 A 小y的序列 (模拟,细节)
  9. 本地项目antd 修改.less文件导致内存溢出
  10. Slave is not configured or failed to initialize properly. You must at least set --server-id
  11. 在工作中常用到的SQL
  12. 【单目标优化求解】基于matlab竞争学习的粒子群算法求解单目标优化问题【含Matlab源码 1784期】
  13. MySQL安装配置详细教程
  14. Mac OS系统怎么修改mac地址
  15. 【Paper笔记】Complement Objective Training
  16. 用c语言制作一个简单的答题系统
  17. android逆向开发工程师需要掌握的技能
  18. 数据结构-树与深度优先遍历
  19. 有极性电容和无极性电容区别
  20. C语言五子棋评分函数,五子棋评分表算法

热门文章

  1. python基本类型关键字_python基本类型关键字_python中的关键字---1(基础数据类)...
  2. 如何解决:微云下载文件总是下载失败
  3. cwber获取html,qq飞车手游CW、CWW、WCW怎么触发方法
  4. python3 aes cbc模式解密_python3 AES 加解密
  5. day23 Java8新特性
  6. Jmeter遇到打不开的问题
  7. 独家|一文读懂优化算法
  8. 微信公众平台简易设计使用
  9. file_put_contents学习笔记
  10. jupyter notebook不显示table of contents