【中国租房信息集分析——基于spark程序,scala语言】

该博客通过Spark程序和Scala语言对中国租房信息进行了深入分析,包括数据处理、统计指标计算,如小区到学校距离、上海三室两卫一厅周边医院、各城市房租最贵小区和北京学校数量最多的小区等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、数据处理

1.数据来源

2.数据转换

3.数据上传

二、统计指标

1.统计每个小区中距离学校最近的距离

2.统计上海市三室两卫一厅房型的周边医院最多的十个小区

3.统计各个城市各个区中房租最贵的前十个小区

4.统计北京市周边学校个数最多的五十个小区、

三、总结


前言

Spark程序是基于Apache Spark框架开发的应用程序,旨在处理大规模数据集。

本文编写Spark程序,使用的是Scala编程语言。利用Spark中强大的功能来快速处理数据,并在处理过程中进行实时计算和交互。Spark程序通常部署在Spark集群上,以获得最佳性能和可伸缩性。

一、数据处理

1.数据来源

网页:数据科学科研和教学一体化平台 (idatascience.cn)

2.数据转换

因为拿到的数据是csv格式的,所以需要将csv格式转为json格式,下面是使用python语言将csv格式转为json格式的代码

3.数据上传

借助工具将json格式的文件传到虚拟机上,然后使用命令将文件上传到hdfs上,便于后续分析;

ps:hdfs dfs -mkdir /house_data 的作用是创建一个文件夹,用于存放数据

二、统计指标

主要以统计每个小区中距离学校最近的距离、统计上海市三室两卫一厅房型的周边医院最多的十个小区、统计各个城市各个区中房租最贵的前十个小区 、统计北京市周边学校个数最多的五十个小区这四个指标进行数据分析

1.统计每个小区中距离学校最近的距离

实现步骤:1.创建sparkSession对象和Dataset[Row]对象——2.筛选出只包含"城市","区","小区","详细地址","最近学校距离"五个字段数据——3.将最近学校距离的字段改为数值型——4.分组后使用min()方法求距离学校最近的距离——5.将结果存到数据库

代码如下:

package com.lzzy

import org.apache.spark.sql.{Column, Dataset, Row, SaveMode, SparkSession}
import java.util.Properties

object NearestToSchool {
  def main(args: Array[String]): Unit = {
    //创建sparkSession对象
    val ss: SparkSession = SparkSession.builder.appName("NearestToSchool").master("local").getOrCreate

    //创建Dataset对象
    val data: Dataset[Row] = ss.read.json("hdfs://master-20210322076:9000/house_data/*")

    //筛选出只包含"城市","区","小区","详细地址","最近学校距离"五个字段数据
    val dataset: Dataset[Row] = data.select("城市", "区", "小区", "详细地址", "最近学校距离")

    //将最近学校距离转为数字类型,并赋值到原来列
    val df: Dataset[Row] &#
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值