【47 Pandas+Pyecharts | 杭州二手房数据分析可视化】

文章目录

  • [🏳️‍🌈 1. 导入模块](#🏳️‍🌈 1. 导入模块)
  • [🏳️‍🌈 2. Pandas数据处理](#🏳️‍🌈 2. Pandas数据处理)
    • [2.1 读取数据](#2.1 读取数据)
    • [2.2 过滤数据](#2.2 过滤数据)
    • [2.3 行政区处理](#2.3 行政区处理)
    • [2.4 地址处理](#2.4 地址处理)
    • [2.5 房屋信息处理](#2.5 房屋信息处理)
    • [2.6 面积处理](#2.6 面积处理)
    • [2.7 楼层处理](#2.7 楼层处理)
    • [2.8 年份处理](#2.8 年份处理)
    • [2.9 房价处理](#2.9 房价处理)
    • [2.10 删除不用的列](#2.10 删除不用的列)
    • [2.11 数据类型转换](#2.11 数据类型转换)
    • [2.12 查看数据信息](#2.12 查看数据信息)
  • [🏳️‍🌈 3. Pyecharts数据可视化](#🏳️‍🌈 3. Pyecharts数据可视化)
    • [3.1 各行政区二手房数量地图](#3.1 各行政区二手房数量地图)
    • [3.2 各行政区二手房数量柱状图](#3.2 各行政区二手房数量柱状图)
    • [3.3 各行政区二手房均价地图](#3.3 各行政区二手房均价地图)
    • [3.4 户型占比分布](#3.4 户型占比分布)
    • [3.5 楼层数量分布](#3.5 楼层数量分布)
    • [3.6 朝向数量分布](#3.6 朝向数量分布)
    • [3.7 面积-总价分布](#3.7 面积-总价分布)
    • [3.8 建设年份分布](#3.8 建设年份分布)
    • [3.9 小区房价词云](#3.9 小区房价词云)
  • [🏳️‍🌈 4. 可视化项目源码+数据](#🏳️‍🌈 4. 可视化项目源码+数据)

大家好,我是 👉【Python当打之年(点击跳转)】

本期利用 python 分析一下**「杭州二手房数据」** ,看看杭州市各区二手房数量、二手房价格分布、户型分布、年份分布、小区分布 等,希望对大家有所帮助,如有疑问或者需要改进的地方可以联系小编。

涉及到的库:

  • Pandas --- 数据处理
  • Pyecharts --- 数据可视化

🏳️‍🌈 1. 导入模块

python 复制代码
import pandas as pd
from pyecharts.charts import *
from pyecharts import options as opts
import warnings
warnings.filterwarnings('ignore')

🏳️‍🌈 2. Pandas数据处理

2.1 读取数据

python 复制代码
df = pd.read_excel("./二手房数据.xlsx")

2.2 过滤数据

python 复制代码
df1 = df.copy()

2.3 行政区处理

python 复制代码
names = ['拱墅', '西湖', '滨江', '上城', '临平', '余杭', '萧山', '富阳', '桐庐', '临安', '淳安','建德', '钱塘']

2.4 地址处理

python 复制代码
df1['小区'] = df1['地址'].str.split(' ', n=2 ,expand=True)[1]

2.5 房屋信息处理

python 复制代码
df1['房屋信息'].str.split('|',expand=True)

2.6 面积处理

python 复制代码
df1['面积(㎡)'] = df1['面积'].apply(lambda x: re.findall(r'\d+', x))

2.7 楼层处理

python 复制代码
df1['楼层'] = df1['楼层'].apply(lambda x: re.findall(r'\d+', x))

2.8 年份处理

python 复制代码
df1['年份'] = df1['年份'].apply(lambda x: re.findall(r'\d+', x))

2.9 房价处理

python 复制代码
df1['总价(万)'] = df1['房价'].apply(lambda x: re.findall(r'\d+', x))

2.10 删除不用的列

python 复制代码
df1 = df1.drop(['房屋信息','房价','联系人','面积', '地址','地铁'])

2.11 数据类型转换

python 复制代码
for col in ['楼层','年份', '卧室', '客厅', '面积(㎡)','总价(万)','单价(元/㎡)']:
    df1[col] = df1[col].astype('int')

2.12 查看数据信息

python 复制代码
df1.info()

🏳️‍🌈 3. Pyecharts数据可视化

3.1 各行政区二手房数量地图

python 复制代码
def get_chart():
    chart = (
        Map()
        .add("",
             [list(z) for z in zip(x_data, y_data)],
             "杭州",
            )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title="1-各行政区二手房数量地图",
                subtitle=subtitle,
                pos_top="2%",
                pos_left="center",
            ),
            visualmap_opts=opts.VisualMapOpts(
                pos_left='3%',
            )
        )
    )
  • 萧山区、拱墅区、西湖区、上城区、临安区的二手房数量要高于其他城区。
  • 东部二手房数量高于西部地区。

3.2 各行政区二手房数量柱状图

python 复制代码
def get_chart2():
    chart = (
        Bar()
        .add_xaxis(x_data)
        .add_yaxis("", y_data)
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title="2-各行政区二手房数量",
                pos_top='2%',
                pos_left="center",
            ),
            visualmap_opts=opts.VisualMapOpts(is_show=False),
        )
    )
    return chart

3.3 各行政区二手房均价地图

  • 上城区、滨江区二手房均价在600万以上,富阳区、淳安县、拱墅区均价在500万以上。

3.4 户型占比分布

python 复制代码
def get_chart():
    chart = (
        Pie()
        .add("",
             sorted_by_value,
            )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title="4-户型占比分布",
                pos_top='2%',
                pos_left="center",
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False,
            ),
        )
        .set_series_opts(
            label_opts=opts.LabelOpts(
                formatter="{b}: {d}%",
            )
        )
    )
  • 3室2厅户型的二手房共1905套,占比约45%。
  • 4室2厅户型的二手房共876套,占比约20%。
  • 2室2厅户型的二手房共509套,占比约12%。
  • 3室2厅、4室2厅、2室2厅户型的二手房,占比约77%。

3.5 楼层数量分布

python 复制代码
def get_chart3():
    chart = (
        Pie()
        .add("", [list(z) for z in zip(x_data, y_data)])
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title="5-出行团体占比",
                pos_top='2%',
                pos_left="center"
            ),
            legend_opts=opts.LegendOpts(is_show=False),
            visualmap_opts=opts.VisualMapOpts(is_show=False,),
        )
        .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {d}%"))
    )
    return chart
  • 7层、8层、12层、19层的二手房数量明显高于其他楼层。
  • 除此之外的二手房楼层分布,高层的数量比低层的多,也就是说出售低层房屋的住户较高层少。

3.6 朝向数量分布

  • 90%以上的二手房朝向都是南向、南北向的。

3.7 面积-总价分布

python 复制代码
def get_chart():
    chart = (
        Scatter()
        .add_xaxis(x_data)
        .add_yaxis(
            "",
            y_data,
            label_opts=opts.LabelOpts(is_show=False)
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title="7-面积-总价分布",
                pos_top='2%',
                pos_left="center"
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False
            ),
        )
    )
  • 呈现面积越大,房价越高的走势,基本符合二手房市场的现状。

3.8 建设年份分布

python 复制代码
def get_chart4():
    chart = (
        WordCloud()
        .add("",words,word_size_range=[10,50])
        .set_global_opts(
            title_opts=opts.TitleOpts(
                    title='8-旅游行程景点词云',
                    pos_top='2%',
                    pos_left="center",
                ),
            legend_opts=opts.LegendOpts(is_show=False),
            visualmap_opts=opts.VisualMapOpts(is_show=False),
        )
    )
    return chart
  • 近10年的房屋出售数量普遍不较高,尤其是2018年和2020年的房屋出售数量超过400套,房屋建设年限算是比较短的了。

3.9 小区房价词云

python 复制代码
def get_chart():
    chart = (
        WordCloud()
        .add("",words,word_size_range=[10,50])
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='9-小区房价词云',
                pos_top='2%',
                pos_left="center",
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False
            ),
        )
    )

【下期:杭州二手房数据爬虫】

🏳️‍🌈 4. 可视化项目源码+数据

点击跳转:【全部可视化项目源码+数据】


以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏 也可以分享注明出处)让更多人知道。

相关推荐
武汉格发Gofartlic9 小时前
Fluent许可与网络安全策略
大数据·开发语言·网络·人工智能·安全·web安全·数据分析
死磕代码程序媛9 小时前
字节内部流传的数据分析手册
数据挖掘·数据分析
宝山哥哥12 小时前
python办自动化--读取邮箱中特定的邮件,并下载特定的附件
python·信息可视化·自动化
王国强200915 小时前
深入解析 Streamlit:为数据科学和机器学习打造的高效 Web 应用框架
数据分析
优秘智能UMI15 小时前
金融系统AIGC能力中心赋能实战指南
大数据·人工智能·深度学习·信息可视化·aigc
空脑小白21 小时前
使用Python绘制专业柱状图:Matplotlib完全指南
python·信息可视化·matplotlib
职业规划师1 天前
统计与大数据分析和数字经济专业有什么区别?
数据挖掘·数据分析
云天徽上1 天前
【数据可视化-67】基于pyecharts的航空安全深度剖析:坠毁航班数据集可视化分析
信息可视化·数据挖掘·数据分析·数据可视化·pyecharts
大树前端老司机1 天前
时空数据可视化新范式:基于Three.js的生产全流程时间轴回溯技术解析
开发语言·javascript·信息可视化·three.js
青春不败 177-3266-05201 天前
基于Surfer与Voxler数据处理及可视化技术应用
信息可视化·气象学·数据处理·环境科学·地质工程·surfer·voxler