购房选址分析之上海市

一日不见,如隔三秋。快过年了,凌晨GIS给大家拜个早年,提前祝大家新年快乐,牛气冲天!

上期我们用矢量分析中的缓冲区分析和叠加分析的方法对长沙市的购房选址方面的问题进行了探讨,得到了许多小伙伴的回应,希望小编分析下上海市购房选址问题。想了想,我觉得可以搞,不过这期我们将利用栅格分析的方法进行选址分析。栅格分析选址主要涉及栅格数据距离制图、成本距离加权、数据重分类、多层面合并等空间分析功能。

主要流程如下:

(1)数据准备,确定需要哪些数据作为输入,包括购物中心数据、小学数据、综合医院数据、地铁站数据;

(2)派生数据集,从现存数据派生出能提供购房选址的原始成本数据,在这里主要为距离成本数据;

(3)重分类各种数据集,消除各成本数据集的量纲影响,使各成本数据具有大致相同的可比分类体系。各成本数据均按等间距分类原则分为1~10级,级数越高适宜性越好;

(4)给各数据集赋权重。必要的话在适宜性模型中影响比较大的数据集赋比较高权重,然后合并各数据集合以寻找适宜位置。本文将权重设为各数据集的权重均设置为0.25,大家也可以根据自己的意愿设置。

将所有POI加载进来展示一下,看起来很漂亮。

接下来进入正题。。。

分析环境设置

因为这期是栅格分析,所以最重要的一步是设置分析环境。ArcToolbox 中选中ArcToolbox右键选择[环境],打开环境设置对话框,设置相关参数:①展开[工作空间],设置工作路径为:“放数据的文件夹”; ②展开[处理范围],在范围下拉框中选择“与边界相同”;③展开[栅格分析],在像元大小下拉框中选择自定义,这里设置为30。

 

【欧氏距离】

在栅格分析中的[欧氏距离]跟矢量分析中的缓冲区原理相似,只是得到的结果的数据类型不同,上期得到的缓冲区是矢量文件,这期我们通过这个工具得到的是栅格数据。首先从各类poi数据中提取直线距离数据。选择[Spatial Analyst工具] | [距离分析] | [欧式距离],分别生成购物中心、小学、综合医院、地铁站的直线距离数据集,这里我们可以右键工具选择批处理批量生成派生数据集。

【重分类】

生成直线距离后,我们需要对其进行重分类。重分类每类数据的直线距离数据集。考虑到住房距离购物中心、学校、地铁、医疗设施比较近时适宜性好,采用等间距分级分为10级,距离poi最近适宜性最高,赋值10;距离最远的地方赋值1。得到每一类数据集的适宜性图。这一步骤与矢量分析中为每一类数据的缓冲区打分原理相似。

综合适宜性分析

重分类后,我们需要将各图层叠加计算,统一到相同的等级体系内,且每个数据集中那些被认为比较适宜性的属性都被赋以比较高的值,选择[Spatial Analyst工具——地图代数——栅格计算器],各个重分类后数据集的合并计算,最终适宜性数据集的加权计算公式为最终适宜性=购物中心*0.25 十中小学*0. 25十医疗设施*0. 25十地铁站*0. 25。

最后得到综合适宜性数据集,从图中可以看出,颜色越深的地方越符合我们的条件。

怎么样,你想好在哪里买房了吗?最后呈上上海市中心城区2018年房价分布图(数据获取能力有限,目前只获取到2018年的数据,不过都差不多,主要是贵)。

好啦,这期分享就到这里啦,下期见!

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
好的,以下是一个简单的Python购房选址分析的代码示例,主要是利用Pandas和Matplotlib库进行数据分析和可视化: ```python import pandas as pd import matplotlib.pyplot as plt # 读取数据 df = pd.read_csv('house_data.csv') # 数据清洗(去除缺失值、异常值等) df = df.dropna() # 去除缺失值 df = df[df['price'] > 0] # 去除价格异常值 # 计算每个区域的平均房价 avg_price_by_district = df.groupby('district')['price'].mean() # 绘制柱状图,显示每个区域的平均房价 plt.bar(avg_price_by_district.index, avg_price_by_district.values) plt.xticks(rotation=45) # 旋转x轴标签,避免重叠 plt.xlabel('District') plt.ylabel('Average Price') plt.title('Average Housing Price by District') plt.show() ``` 在这个示例代码中,我们首先读取了一个名为"house_data.csv"的数据文件。然后我们对数据进行了清洗,去除了缺失值和异常值。接着,我们通过Pandas的groupby函数对每个区域进行了分组,计算了每个区域的平均房价,并将结果保存到了avg_price_by_district变量中。最后,我们使用Matplotlib库绘制了一个柱状图,显示每个区域的平均房价。 请注意,这只是一个简单的示例代码,您需要根据实际情况进行修改。比如,您可能需要根据不同的区域进行更细粒度的分析,或者对其他房价相关的因素进行分析。此外,也需要注意数据的质量和准确性,以免分析结果出现偏差。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌晨GIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值