spark中关于dataframe的使用详解

本文详细介绍了如何在Spark中使用DataFrame进行复杂数据筛选,通过实例展示了从CSV文件加载数据,对比不同年份的人口普查数据,找出人口减少的地区并按减少数量排序的方法,结合了DataFrame API和SQL操作。
摘要由CSDN通过智能技术生成

spark关于DataFrame在复杂数据筛选的使用小记

【实验说明】

1,people.csv 中的数据是中国第五次人口普查(2000年)和第六次人口普查(2010年)的数据。以下为数据列的说明

列序号 说明
1 地区名称
2 户口地区类型,分别为 城市/镇/乡村
3 户口集体类型,分别为 家庭户/集体户
4 统计年份
5 性别
6 人数

【实验要求】

取2000年普查数据对比2010年普查数据,统计所有人口减少的地区,按减少数量从高到低排列。结果表头格式如下表所示

|dist| anum   |  bnum|     de  |
| -------------  | ------------|
|湖北|59508870|57237727|2271143|
|四川|82348296|80417528|1930768|
|重庆|30512763|28846170|1666593|
|贵州|35247695|34748556| 499139|

【代码解析】

1,使用dataframe
df=rdd.toDF(schema)
df.createOrReplaceTempView('people')
df.show()

#|地区|2000年人数|2010年人数|人口减少数量|
#此步骤用于分组求和,依照地区和年份进行分组,再求和,此数据包含两个时间段,下一步就是进行按年份分开
g_sum=df.groupBy("dist","year").sum(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值