Pyspark案例综合(数据计算)

数据计算

map方法

map算子

map算子(成员方法)接受一个处理函数,可用lambda快速编写,对RDD内的元素一一处理,返回RDD对象

链式调用

对于返回值是新的RDD的算子,可以通过链式调用的方式多次调用算子

python 复制代码
"""
演示RDD的map成员方法的使用
"""
from pyspark import SparkConf, SparkContext
import os
os.environ['PYSPARK_PYTHON'] = "C:/Microsoft/WindowsApps/python.exe"
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
sc = SparkContext(conf=conf)

# 准备一个RDD
rdd = sc.parallelize([1, 2, 3, 4, 5])
# 通过map方法将全部数据都乘以10
# def func(data):
#     return data * 10

rdd2 = rdd.map(lambda x: x * 10).map(lambda x: x + 5)

print(rdd2.collect())
# (T) -> U
# (T) -> T

# 链式调用

flatMap方法

flatmap方法用于解除嵌套操作。

python 复制代码
"""
演示RDD的flatMap成员方法的使用
"""
from pyspark import SparkConf, SparkContext
import os
os.environ['PYSPARK_PYTHON'] = "C:/Microsoft/WindowsApps/python.exe"
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
sc = SparkContext(conf=conf)

# 准备一个RDD
rdd = sc.parallelize(["itcast 666", "777 itcast", "python 666"])

# 需求,将RDD数据里面的一个个单词提取出来
rdd2 = rdd.flatMap(lambda x: x.split(" "))
print(rdd2.collect())
相关推荐
python1565 分钟前
使用Langfuse和RAGAS,搭建高可靠RAG应用
人工智能·windows·python
秋野酱12 分钟前
python项目参考文献
开发语言·python
今天我又学废了29 分钟前
Spark,SparkSQL操作Mysql, 创建数据库和表
大数据·mysql·spark
CodeBlossom44 分钟前
java加强 -stream流
java·windows·python
(・Д・)ノ1 小时前
python打卡day28
开发语言·python
保利九里1 小时前
java中的方法详解
java·开发语言·python
Y3174291 小时前
Python Day25 学习
python·学习
江禾藜1 小时前
Python爬虫之路(14)--playwright浏览器自动化
爬虫·python·自动化
灏瀚星空1 小时前
Python标准库完全指南:os、sys与math模块详解与实战应用
开发语言·python·microsoft
坐吃山猪1 小时前
Python-Flask-Dive
开发语言·python·flask