记单词005

dive
潜水

lime
石灰,酸橙

penetrate
渗透,穿透

inn
客栈,小旅馆

indoors
在室内

crown
王冠

marine
海的

sour
酸的

halt
停止

dock
码头

glow
赤热

shortcoming
缺点

knot
结,打结

fatal
致命的,毁灭性的

sympathetic
同情的

disgust
厌恶

drown
淹死

appetite
食欲,嗜好

conceal
隐藏,掩盖

convenient
方便的

rob
抢劫

robe
长袍

choke
窒息

intensive
强烈的

dim
暗的

bristle
刚毛,猪鬃

dull
迟钝的

honourable
荣誉的

heir
继承人

peel
皮,削皮

confine
限制

cliff
悬崖

moisture
湿气

devil
魔鬼

utter
完全,绝对

acute
尖的,锐的

tremendous
巨大的,惊人的

gown
长袍

### **Spark SQL 零售商店数据分析项目** **项目名称**:零售商店销售数据分析 ​**技术栈**​:Spark 3.x + Python/Scala ​**考核目标**​:掌握 DataFrame 创建、查询、聚合、多表关联等核心操作 ------ ## **一、数据集说明** ### **1. 员工表 `employee.csv`** ```csv emp_id,name,age,gender,department,salary,hire_date E001,张伟,35,M,销售部,8500,2020-05-12 E002,李娜,28,F,财务部,9200,2021-02-18 E003,王强,42,M,物流部,7800,2019-08-03 E004,赵敏,31,F,销售部,8800,2021-07-22 E005,刘洋,26,M,IT部,10500,2022-01-15 E006,陈雪,29,F,销售部,8600,2020-11-30 E007,杨光,33,M,财务部,9500,2018-09-10 E008,周婷,27,F,物流部,8000,2022-03-25 ``` ### **2. 销售表 `sales.csv`** ```csv sale_id,emp_id,product_id,quantity,unit_price,sale_date S001,E001,P1001,2,299.50,2023-05-10 S002,E004,P1002,1,1599.00,2023-06-15 S003,E001,P1003,3,89.90,2023-04-18 S004,E006,P1001,1,299.50,2023-07-02 S005,E003,P1004,2,450.00,2023-05-28 S006,E004,P1002,1,1599.00,2023-06-20 S007,E002,P1005,4,120.00,2023-03-12 S008,E005,P1003,2,89.90,2023-08-05 ``` ### **3. 商品表 `product.csv`** ```csv product_id,product_name,category,supplier P1001,无线耳机,电子产品,SupplierA P1002,智能手机,电子产品,SupplierB P1003,保温杯,日用品,SupplierC P1004,运动鞋,服装,SupplierD P1005,笔记本,文具,SupplierA ``` ------ ## **二、考核任务** ### **任务1:DataFrame 创建与基础操作(30分)** 1. 加载所有CSV文件为DataFrame,并打印Schema(10分) 2. 统计各部门员工数量(10分) 3. 查询薪资超过9000的员工(10分) **示例代码**: ```python employee_df = spark.read.csv("employee.csv", header=True, inferSchema=True) employee_df.filter("salary > 9000").show() ``` ### **任务2:数据清洗与转换(20分)** 1. 处理销售表中的空值(`quantity`缺失时填充1)(10分) 2. 计算每笔销售的总金额(`quantity * unit_price`)(10分) **示例代码**: ```python from pyspark.sql.functions import col sales_df = sales_df.na.fill({"quantity": 1}) sales_df.withColumn("total_amount", col("quantity") * col("unit_price")).show() ``` ### **任务3:多表关联与聚合(40分)** 1. 查询每笔销售的详细信息(含员工名和商品名)(15分) 2. 统计各商品类别的销售总额(15分) 3. 找出销售额最高的员工(显示姓名和总销售额)(10分) **示例代码**: ```python joined_df = sales_df.join(employee_df, "emp_id").join(product_df, "product_id") joined_df.select("name", "product_name", "total_amount").show() ``` ------ ## **三、提交要求** 1. **代码文件**:完整的PySpark/Scala脚本 2. **运行截图**:关键查询结果的终端输出 3. 分析报告 (可选): - 数据质量问题和处理方式 - 关键业务发现(如最佳销售部门、热门商品) ------ ## **四、评分标准** | **任务** | **评分点** | **分值** | | :------------: | :----------------------: | :------: | | DataFrame创建 | 正确加载数据并打印Schema | 30 | | 数据清洗 | 空值处理、计算列添加 | 20 | | 多表关联与聚合 | JOIN操作、聚合函数使用 | 40 | | 数据可视化 | 图表正确性 | 10 | **建议时间**:120分钟 ​**难度**​:⭐️⭐️⭐️(中等) ------ ## **五、扩展挑战(可选)** 1. 计算员工销售额的月度增长率 2. 使用窗口函数找出各部门薪资最高的员工 **示例代码**: python 复制 ```python from pyspark.sql.window import Window windowSpec = Window.partitionBy("department").orderBy(col("salary").desc()) employee_df.withColumn("rank", rank().over(windowSpec)).show() ``` ------ ### **项目特点** 1. **业务贴近性**:零售行业真实场景(员工、销售、商品) 2. **技能全覆盖**:从数据加载到复杂聚合+可视化 3. **可扩展性**:可通过增加数据量或添加时间分析提升难度
最新发布
06-17
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值