pyspark 初试

1、安装jdk

sudo apt-get install openjdk-17-jdk

2、安装spark  

curl -o spark.tgz https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-4.0.0/spark-4.0.0-bin-hadoop3.tgz
tar -xvf spark.tgz
mv spark-4.0.0-bin-hadoop3 /opt/spark

修改 /etc/profile 添加

export SPARK_HOME=/opt/spark

export PATH=$PATH:SPARK_HOME/bin:$SPARK_HOME/sbin

然后  source /etc/profile

spark-shell

#import findspark
#findspark.init()
from pyspark.sql import SparkSession

spark = SparkSession.builder.appName('test').getOrCreate()
#df =spark.read.text("name.txt")
#df.show(2)

df =spark.read.csv("911.csv",header=True,inferSchema=True)
df.show(5)
df.head(5)
df.printSchema()
df.count()
df.describe().show()
df.sample(frction=0.05).show()

row=df.head() #只获取一行
row.asDict() #转成字典
df.columns #打印列  column  只是列的描述
#查询
df.select(df['salary'],((df['salary'] * 0.1).alias('bonus'))).show()

一、实训要求 1、搭建spark运行的整个框架。 2、运行环境测试。 3、数据预处理,对数据筛选。 4、数据查询处理。 5、根据选题至少完成5页及以上的业务查询。 6、项目正常运行部署,查询业务基本正常,设计功能整体实现 二、报告要求 1、字数(包含代码)不少于3000字 2、按照模板要求进行报告编写 3、报告格式规范、图文并茂、语言规范流畅 4、主题鲜明、中心突出、结论正确 5、内容新颖、心得体会读到 一、内容介绍 从数据文件中分析电影的信息,电影题材、片名、剧情关键字、分级、用户评分等关于影片的基本信息,从文件movies.dat、ratings.dat、users.dat中完成项目分配的问题,文件中有很多元素,用已有的信息完成下面内容的实现。 二、代码与功能说明 先建立Utils类,用于初始化配置信息以及解析原始数据 Utils代码: object Utils { val conf=new SparkConf().setAppName("FileReview").setMaster("local") val sc=new SparkContext(conf) sc.setLogLevel("ERROR") val movie=sc.textFile("D:/movies.dat") val ratings=sc.textFile("D:/ratings.dat") val users=sc.textFile("D:/users.dat") val movieRdd=movie.map(_.split("::")).map(m=>(m(0),m(1),m(2))) val ratingsRdd=ratings.map(_.split("::")).map(r=>(r(0),r(1),r(2))) val usersRdd=users.map(_.split("::")).map(u=>(u(0),u(1),u(2))) } 三.电影数据业务查询 1、求被评分次数最多的10 部电影并给出评分次数(电影名,评分次数)(spark rdd) 2、分别求男性女性当中评分最高的10部电影(性别,电影名,影评分)(spark rdd) 3、求 1997 年上映的电影中,评分最高的 10 部 Comedy 类电影(spark rdd) 4、查询各种类型电影中评价最高的5部电影(类型,电影名,平均影评分)(spark rdd) 5、各年评分最高的电影类型(年份,类型,影评分)(spark rdd) 6、每部电影的总得分和平均得分 (sparksql) 7、最热门的前50部电影(评分总数最高的)(电影名称,评分总数) (sparksql) 8、每个人评价最高的10部电影(评论人姓名,评论次数) (sparksql) 9、每个人的评分总和(评论人姓名,评分总和) (sparksql) 10 、数据可视化(扩展,选做)…………………………. 四、实训总结(800-1000字)按要求完成 使得格式在word中能正常输出,并给出模拟运行结果,要求任务全部完成并按顺序给出代码和模拟运行结果
06-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

larance

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

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

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

打赏作者

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

抵扣说明:

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

余额充值