@深度学习训练营(21天实战)笔记
第一天

第一章 房价预测

数据:https://github.com/21-projects-for-deep-learning/MyBook

环境:numpy pandas sklearn seaborn matplotlib tensorflow 全部通过pip安装

1.数据预处理

import pandas as pd #加载数据集

#读取数据,数据必须放在根目录,否则要用绝对路径 反斜杠
data = pd.read_csv('housing.csv') 
print("波士顿房屋数据有{}行x{}列。".format(data.shape[0],data.shape[1])) 
#shape函数的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度

#查看前5行数据,head()函数
data.head()

在这里插入图片描述
RM:该地区每座房屋的平均房间数量
LSTAT:该地区的房主中低收入阶层(有工作但收入微薄)所占百分比
PTRATIO:该地区的中小学里,学生和老师的人数之比(学生数/老师数)
MEDV:该地区业主自住房屋的价格中位数

#利用describe()函数来观察数据的基本统计信息
data.describe()

在这里插入图片描述

# 如果想自己写代码统计房屋价格的信息
import numpy as np 
#计算最低价格
minimum_price = np.min(data["MEDV"]) #计算最低价格
maximun_price = np.max(data["MEDV"]) #计算最高价格
mean_price = np.mean(data["MEDV"]) #计算平均价格
median_price = np.median(data["MEDV"]) #计算中间价格
std_price = np.std(data["MEDV"]) #计算标准差价格
#打印输出所有计算的价格统计
print("波士顿房价数据的统计:")
print("最低价格: ${}".format(minimum_price))
print("最高价格:${}".format(maximun_price))
print("均价:${}".format(mean_price))
print("中间价格:${}".format(median_price))
print("标准差价格:${}".format(std_price))

在这里插入图片描述
接下来分割训练集的训练数据X和y,也就是房屋特征数据features和房屋价格prices。MEDV列为y,X为将MEDV列丢弃后的数据

prices = data['MEDV'] #获取房屋价格
#获取房屋特征
features = data.drop('MEDV',axis=1) 
#1表示横轴,方向从左到右;0表示纵轴,方向从上到下。axis=1表示横向列的减少

2.数据可视化分析

分析RM列和MEDV列的相关性

import matplotlib.pyplot as plt
import seaborn as sns
#regplot()函数根据数据绘制线性回归(Linear Regression)模型图
#参数1:X轴,表示每座房屋的平均房间数量
#参数2:y轴,表示房屋价格
#参数3:绘图室使用的颜色,这里是红色
sns.regplot(data['RV'],prices,color='red')
#显示绘图
plt.show()

分析LSTAT列和MEDV列的相关性

#regplot()函数根据数据绘制线性回归(Linear Regression)模型图
#参数1:X轴,房主中低收入阶层(有工作但收入微薄)所占百分比
#参数2:y轴,表示房屋价格
#参数3:表示绘制的图是用什么标记绘制出来的,这里是“+”
#参数4:绘图室使用的颜色,这里是绿色
sns.regplot(data['LSTAT'],prices,marker='+',color='green')
#显示绘图
plt.show()

分析PTRATIO列和MEDV列的相关性

#regplot()函数根据数据绘制线性回归(Linear Regression)模型图
#参数1:X轴,该地区的中小学里,学生和老师的人数之比(学生数/老师数)
#参数2:y轴,表示房屋价格
#参数3:表示绘制的图是用什么标记绘制出来的,这里是“^”
#参数4:绘图室使用的颜色,这里是蓝色
sns.regplot(data['PTRATIO'],prices,marker='^',color='blue')
plt.show()

未完待续。

Logo

更多推荐