床的品牌哪个好-瓷砖排行榜前十名有哪些品牌

《Python数据分析与应用案例教程》教案   第21课 二手房数据分析与房价预测数据分析与可视化
2023年4月23日发(作者:卫生间吊顶装修效果图片)

课题

21 二手房数据分析与房价预测数据分析与可视化

2课时(90 min 课时

知识技能目标:

1 练习使用Pandas分析数据

教学目标

2 练习使用Matplotlib可视化展示数据

3 练习使用Scikit-learn中的线性回归模型预测数据

素质目标:

了解国家的发展方向,增强民族自信心和自豪感

教学重难点

教学方法 案例分析法、问答法、讨论法、讲授法

教学用具 电脑、投影仪、多媒体课件、教材、APP

教学重点:使用Pandas分析数据

教学难点:使用Matplotlib可视化展示数据

1节课:考勤(2 min)→问题导入(5 min)→传授新知(28 min)→课堂实践(10 min

教学设计

2节课:问题导入(8 min)→传授新知(20 min)→课堂讨论(12 min)→课堂小结(3 min

→作业布置(2 min

教学过程 主要教学内容及步骤 设计意图

第一节课

考勤

2 min

【教师】使用APP进行签到

【学生】按照老师要求签到

【教师】提出问题

生的

织纪律性,掌握学

生的出勤情况

问题导入

5 min

呢?

我们已经学习了案例分析及数据预处理的相关知识,那么数据如何进行分析

法,了解学生对数

据分析的知识,

而引出新知

【学生】思考、举手回答

【教师】总结学生的回答,并引入新知,讲解数据分析与可视化的相关知识

7.3 数据分析与可视化

7.3.1 各区二手房数量和均价分析

【教师】按照教材步骤进行问题分析及程序演示:

传授新知

28 min

各区二手房数量和均价分析可以通过下面4个步骤来实现。

1)导入“最新发布的北京二手房数据_预处理.xlsx”文件中的数据,并设置

中文字体。

2)创建新画布,设置大小为(12, 6)

3将数据按所在区分组,并使用size()函数获取每个分组的统计个数;然后,

创建一行一列的子图ax1,以统计个数的行标签为x轴数据、数值为y轴数据、颜

色为(0.894, 0, 0.498)绘制柱状图,并设置y轴标题、图例和图表标题。

4)将数据按所在区分组,并将分组数据的单价列按均值聚合,然后使用通过教师讲解、

twinx()函数创建一个共享x轴的子图ax2,以均值为y轴数据、蓝色点画线星号为课堂讨论、多媒体

线条样式绘制折线图,并设置y轴标题、图例和每个数据的文本标签。实现代码如演示等方式,使学

下。

import as plt

import numpy as np

import pandas as pd

df = _excel('最新发布的北京二手房数据_预处理.xlsx')

ms['-serif'] = 'SimHei'

(figsize=(12, 6))

#绘制各区二手房数量柱状图

df_count = y('所在区').size()

ax1 = t(1, 1, 1)

x = df_

height = df_count

(x, height, width=0.6, color=(0.894, 0, 0.498))

_ylabel('房源数量')

(('数量',), loc='upper left')

('各区二手房数量和均价双轴图')

#绘制各区二手房均价折线图

df_price = y('所在区')['单价(元/平方米)'].agg('mean')

ax2 = ()

y = df_price

(x, y, 'b-.*')

_ylabel('房源均价/(元/平方米)')

(('均价',), loc='upper right')

for a, b in zip(x, y):

(a, b, '%d' % b, ha='center')

()

(详见教材)

【学生】观察、记录、理解

【学生】教师演示完成后,学生按照教材提示和教师演示进行实际操作,并

对比程序运行结果(详见教材)

【教师】巡视课堂记录,对学生进行个别指导

【教师】提出学习任务:

对比程序结果,进行结果分析。

【学生】观察、记录、理解、分析

【教师】总结学生的分析结果

生了解数据分析

与可视化等相关

知识,包括各区二

手房数量和均价

分析和二手房面

积和总价区间占

比分析

本次采集的房源数据中,西城区的房源均价最高,平谷区的房源均价最低,且

相差较大;均价超过10万元的区有东城和西城;朝阳区的房源数量最多,其均价处

于中间水平。

7.3.2 二手房面积和总价区间占比分析

【教师】按照教材步骤进行问题分析及程序演示:

首先,创建新画布,设置大小为(12, 6);然后,将数据按面积区间分组及获取

其统计个数,创建第一个子图,以统计个数的数值为扇区数据、行标签为扇区标签、

两位小数百分比为比例格式绘制饼状图,并设置子图标题;最后,将数据按总价区

间分组及获取其统计个数,创建同一行的第二个子图,以统计个数的数值为扇区数

据、行标签为扇区标签、两位小数百分比为比例格式绘制饼状图,并设置子图标题。

实现代码如下。

(figsize=(12, 6))

#绘制北京二手房面积区间占比饼状图

df_area_count = y('面积区间').size()

t(1, 2, 1)

x = df_area_count

label = df_area_

(x, labels=label, autopct='%.2f%%')

('北京二手房面积区间占比饼状图')

#绘制北京二手房总价区间占比饼状图

df_totalPrice_count = y('总价区间').size()

t(1, 2, 2)

x = df_totalPrice_count

label = df_totalPrice_

(x, labels=label, autopct='%.2f%%')

('北京二手房总价区间占比饼状图')

()

(详见教材)

【学生】观察、记录、理解

【学生】教师演示完成后,学生按照教材提示和教师演示进行实际操作,并

对比程序运行结果(详见教材)

【教师】巡视课堂记录,对学生进行个别指导

【学生】聆听、思考、理解、记忆

通过课堂讨论,

课堂实践

10 min

加深学生对二手

【教师】提出问题:

房面积和总价区

间占比分析结果

的理解

请同学们观看二手房面积和总价区间占比饼状图,可以看出哪些内容?

【学生】聆听、思考、讨论、小组代表回答问题

【教师】总结学生的回答

从图中可以看出,本次采集的房源数据中,120平方米以下的房源占大部分,

6090平方米的房源最多;200万~800万元的房源占大部分,200万~400

万元的房源最多。

第二节课

【教师】提出问题

问题导入

8 min

我们已经学习了二手房面积和总价区间占比分析,那么二手房房龄与均价有哪些法,引导学生主动

关系? 思考,激发学生的

【学生】聆听、思考、回答问题

【教师】总结学生的回答,并引入新知,讲解二手房房龄与均价相关性的相关知识

7.3.3 二手房房龄与均价的相关性分析

【教师】按照教材进行问题分析并按照步骤进行二手房房龄与均价的相关性分

析演示:

商品房产权一般只有70年,因此购房时需要考虑房源房龄。此处,使用散点图

传授新知

20 min

分析二手房房龄与均价的相关性。

通过教师讲解

和课堂练习,使学

生了解二手房房

龄与均价的相关

通过提问的方

学习兴趣

首先,将数据按房龄分组并求均值聚合;然后,创建新画布,设置大小为(12, 6)

性分析,是否靠近

以聚合数据的行标签为x轴数据、单价列(即均值)为y轴数据、颜色为(0.894, 0,

地铁的不同装修

0.498)绘制散点图,并设置x轴、y轴和图表标题。实现代码如下。

df_average = y('房龄').agg('mean')

(figsize=(12, 6))

x = df_

y = df_average['单价(元/平方米)']

r(x, y, color=(0.894, 0, 0.498))

二手房均价分析,

预测房价的相关

知识

('房龄')

('均价/(元/平方米)')

('二手房房龄与均价的相关性散点图')

()

(详见教材)

【学生】观察、记录、理解

【学生】教师演示完成后,学生按照教材提示和教师演示进行实际操作,并对

比程序运行结果(详见教材)

【教师】巡视课堂记录,对学生进行个别指导

【教师】提出学习任务:

对比程序结果,进行结果分析。

【学生】观察、记录、理解、分析

【教师】总结学生的分析结果

从图中可以看出,本次采集的房源数据中,房龄和均价有一定的正相关,随着房

龄的增加,整体均价有一定幅度的增长,这可能是房龄越大,房源地理位置越靠近中

心的原因。

7.3.4 是否靠近地铁的不同装修二手房均价分析

【教师】按照教材进行问题分析并按照步骤进行是否靠近地铁的不同装修二手

房均价分析演示:

是否靠近地铁意味着交通是否方便,而不同的装修则意味着购房后是否可以直

接入住或不同的装修费用。对是否靠近地铁的不同装修房源均价的分析,可以为购房

者是否将这两个因素纳入考虑范围中提供参考。此处,使用多柱状图分析是否靠近地

铁的不同装修二手房的均价。

首先,以单价为统计字段、以装修和房源标签分别为行字段和列字段、以均值

为统计指标绘制透视表;然后,创建新画布,以区间为[0, 4)和等差为1的数列为x

轴数据、以透视表的不近地铁列为y轴数据绘制第一组柱状图,以增加宽度的等差数

列为x轴数据、以透视表的近地铁列为y轴数据绘制第二组柱状图,并设置x轴和y

轴标题、图例、x轴刻度标签和图表标题。

实现代码如下。

df1 = _table(df, values='/', index='',

columns='房源标签', aggfunc='mean')

()

width = 0.3

x = (4)

(x, df1['不近地铁'], width)

x = x + width

(x, df1['近地铁'], width)

('装修')

('均价/(元/平方米)')

(s)

((4) + width / 2, )

('是否靠近地铁的不同装修二手房均价柱状图')

()

(详见教材)

【学生】观察、记录、理解

【学生】教师演示完成后,学生按照教材提示和教师演示进行实际操作,并对

比程序运行结果(详见教材)

【教师】巡视课堂记录,对学生进行个别指导

【教师】提出学习任务:

对比程序结果,进行结果分析。

【学生】观察、记录、理解、分析

【教师】总结学生的分析结果

从结果可以看出,本次采集的房源数据中,靠近地铁比不靠近地铁的均价要高;

精装修的均价最高,毛坯的均价最低,但差距不是很大。

7.4 使用线性回归模型预测房价

【教师】按照教材进行使用线性回归模型预测房价分析:

市场上的房价受多种因素影响,通过对它们进行分析,有助于对未来房价的走势

进行预测。

多元线性回归适用于分析受多因素影响的连续数据。由多个自变量的最优组合来

估计或预测因变量,比只用一个自变量进行估计或预测更有效,更符合实际。本节利

用多元线性回归模型,通过某房产网站上最新发布的北京二手房数据,预测北京二手

房未来的房价。

在建立回归模型时,选择面积、户型(室和厅)、所在区(北京16个行政区和

亦庄开发区)、装修(毛坯、简装和精装)、结构(塔楼、板楼、板塔结合和平房)、

房源标签(近地铁和不近地铁)、朝向(东、南、西、北、东北、东南、西南和西北)

和房龄作为自变量,单价作为因变量。根据二八原则,以80%的样本数据作为训练

集,训练线性回归模型,其余20%的样本数据作为测试集。

【教师】按照教材进行问题分析及编程步骤演示:

Python提供了机器学习库Scikit-learn用于建立回归模型,实现过程如下。

1)导入Python库,并设置图表的中文字体。

import pandas as pd

import as plt

from sklearn import model_selection

from _model import LinearRegression

ms['-serif'] = 'SimHei'

2)导入预处理文件中的数据,并选择自变量和因变量。

df = _excel('最新发布的北京二手房数据_预处理.xlsx')

unit_price = df['单价(元/平方米)']

house_area = df['面积(平方米)']

house_type = df[['', '']]

house_regin = df[['通州', '朝阳', '昌平', '顺义', '丰台', '海淀', '西城', '房山', '

石景山', '大兴', '怀柔', '东城', '门头沟', '密云', '延庆', '平谷', '亦庄开发区']]

house_finish = df[['毛坯', '简装', '精装']]

house_structure = df[['塔楼', '板楼', '板塔结合', '平房']]

is_subway = df[['近地铁', '不近地铁']]

house_dirt = df[['', '', '西', '', '东北', '东南', '西南', '西北']]

house_year = df['房龄']

#选择自变量x和因变量y

x = ([house_area, house_type, house_regin, house_finish,

house_structure, is_subway, house_dirt, house_year], axis=1)

y = unit_price

3)划分训练集和测试集,然后通过训练集训练线性回归模型,并根据测试集

的自变量对北京二手房房价进行估计。

#划分训练集与测试集

x_train, x_test, y_train, y_test = model__test_split(x, y,

test_size=0.2)

LR = LinearRegression() #建立线性回归模型

reg = (x_train, y_train) #训练模型

#对测试集的自变量进行估计 predicted = t(x_test)

4)使用折线图绘制实际值和估计值的后50个数据。

(figsize=(12, 6))

n = 50

(range(n), y_test[-n:], '-.*') #绘制实际值折线图

#绘制估计值折线图 (range(n), predicted[-n:], 'r--.')

(['实际值', '估计值'])

('50个数据')

('单价/(元/平方米)')

('二手房房价实际值和估计值折线图')

()

(详见教材)

【教师】提出学习任务:

对比程序结果,进行结果分析。

【学生】观察、记录、理解、分析

【教师】总结学生的分析结果

从结果可以看出,使用线性回归模型计算的北京二手房估计值与实际值稍有偏

差,但整体趋势基本一致,可以通过该模型粗略预测北京二手房房价。

提示】教师讲解程序运行结果

【学生】聆听、思考

【教师】按照教材进行不同房源信息问题分析及编程步骤演示:

5)定义两组房源信息,如海淀和昌平的80平方米、21厅、精装、塔楼、

靠近地铁、朝南、15年的房源信息,并添加到自变量的测试集中,然后使用第4

中的线性回归模型预测北京二手房房价。

#定义两组房源的自变量信息,添加到x_test

#80平方米、21厅、海淀、精装、塔楼、靠近地铁、朝南、15

x_[len(x_test)] = [80, 2, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 15]

#80平方米、21厅、昌平、精装、塔楼、靠近地铁、朝南、15

x_[len(x_test) + 1] = [80, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 15]

predicted = t(x_test) #预测数据

#输出最后两个预测值

print('80平方米、21厅、海淀、精装、塔楼、靠近地铁、朝南、15年的房

价预测值(元/平方米):n', predicted[-2])

print('80平方米、21厅、昌平、精装、塔楼、靠近地铁、朝南、15年的房

价预测值(元/平方米):n', predicted[-1])

【教师】提出学习任务:

对比程序结果,进行结果分析。

【学生】观察、记录、理解、分析

【教师】总结学生的分析结果

结果可以看出,同样面积、户型、装修、结构、是否靠近地铁、朝向和房龄的房

源,海淀和昌平的预测房价相差很大,基本符合7.3.1节中各区二手房均价的分析。

提示】教师介绍机器学习的线性回归模型的使用方法

【学生】聆听、思考

【学生】聆听、思考、理解、记录

【教师】讲述“复兴之路”案例,提出问题,请同学们分小组讨论:

通过课堂讨论,

课堂讨论

12 min

你知道中国哪些关于国民经济和社会发展的策略?

【学生】聆听、结组、思考、讨论、小组代表发言

【教师】聆听学生的回答

【教师】简要总结本节课的要点

本节课学习了数据分析与可视化的相关知识,包括各区二手房数量和均价分析,

课堂小结

3 min

二手房面积和总价区间占比分析,二手房房龄与均价的相关性分析,是否靠近地铁的

不同装修二手房均价分析及使用线性回归模型预测房价等相关内容,希望大家在课下

多加练习,巩固所学知识。

【学生】总结回顾知识点

【教师】布置课后作业

作业布置 复习巩固学到的

2 min 知识,提高理论接

完成课后“本章考核7”的习题。

【学生】完成课后任务

教学反思

通过课后作业

收能力

总结知识点,

固学生对相关知

识的印象

使学生能够了解

更多关于国家发

展方向的知识

本节课通过实际案例让学生了解数据分析与可视化的知识,学生通过实践掌握了相关知识并且锻炼

了技能,但由于案例综合性较强,部分学生不能全面掌握,需要其他同学的帮助进行知识巩固。

沙发的款式和类型照片-英式别墅图片

《Python数据分析与应用案例教程》教案   第21课 二手房数据分析与房价预测数据分析与可视化

更多推荐

查房价哪个app最真实