Spark出租车数据实验实用说明书
一、实验原理:
(1)数据的准备。
(2)创建DataFrame。
(3)使用kmeans聚类。
(4)聚类结果可视化。
二、实验要求
使用出租车上传的GPS点作为分析对象,使用KMeans把出租车轨迹点聚类找出出租车出现秘籍的地方,用地图的方式可视化展示。
三、实验实现:
1、数据的下载
数据为:taxi.csv
格式: tid-出租车编号 lat-维度 lon-经度 time-时间戳
利用到的第三方库:numpy(pip install numpy) 在cmd中即可安装
2、数据分析 ————在spark中(交互式pyspark)
from pyspark.sql impport SparkSession
from pyspark import SparkContext #引入与sql相关的包初始化spark上下文
taxi_data = sc.textFile(“path(taxi.csv)”) #读取taxi.csv文件
taxi_rdd = taxi_data.map(lambda line:line.split(‘,’)) #使用map算子操作将数据以逗号隔开创建RDD。
from pyspark.ml.linalg import Vectors #导包
taxi_row = taxi_rdd.map(lambda x:(Vectors.dense (x[1],x[2]),)) #创建矢量RDD,两个矢量参数分别为经度和维度。
Sqlsc = SparkSession.builder.getOrCreate()