PySpark实战:randomSplit
来自CloudWiki
介绍
randomSplit操作是一个变换算子,
调用形式为rdd.randomSplit(weights,seed=None)
它可以按照权重weights对RDD进行随机分割,并返回多个RDD构成的列表。
作用: 这种随机分割在一些数据挖掘或者机器学习算法中非常有用,用于把数据集合随机切分。
代码
import findspark findspark.init() ############################################## from pyspark.sql import SparkSession spark = SparkSession.builder \ .master("local[1]") \ .appName("RDD Demo") \ .getOrCreate(); sc = spark.sparkContext ############################################# rdd = sc.parallelize(range(100), 1) #按照2:3比例进行RDD切分 rdd1, rdd2 = rdd.randomSplit([2, 3], 10) #40 print(len(rdd1.collect())) #60 print(len(rdd2.collect())) ############################################## sc.stop()
输出
40
60