Python PySpark数据帧示例说明

Python PySpark数据帧示例说明,python,pyspark,pyspark-sql,pyspark-dataframes,Python,Pyspark,Pyspark Sql,Pyspark Dataframes,我有一个有500万行的PySpark数据帧,希望得到随机选择的子集的描述 当我生成相同分数的两个不同样本时,我得到的结果是相同的 样本1=df.样本(分数=0.03,种子=无) 样本2=df.样本(分数=0.03,种子=无) 两个不同数据帧的描述怎么可能相同 SparkContext()。版本='2.4.4' 我最初的猜测是种子是相同的 如果你不关心再现性,那么每次取样都使用一个随机种子。 如果您想要再现性,请为每个采样使用一个恒定但不同的种子 关于平等性,Spark比较数据帧的方式可能在幕后发

我有一个有500万行的PySpark数据帧,希望得到随机选择的子集的描述

当我生成相同分数的两个不同样本时,我得到的结果是相同的

样本1=df.样本(分数=0.03,种子=无)

样本2=df.样本(分数=0.03,种子=无)

两个不同数据帧的描述怎么可能相同

SparkContext()。版本='2.4.4'


我最初的猜测是
种子
是相同的

如果你不关心再现性,那么每次取样都使用一个随机种子。 如果您想要再现性,请为每个采样使用一个恒定但不同的种子

关于平等性,Spark比较数据帧的方式可能在幕后发生了一些事情

运行以下操作时会发生什么情况:

sample_1.except(sample_2).isEmpty

在每次调用时更改seed如何?我已经尝试过了,但结果是相同的。只是测试了相同的结果,每次采样都会得到不同的结果。事实上,我使用相同的代码得到了不同的描述(即使用
seed=None
),感谢您的回复。现在它起作用了。但我仍然不确定这是否与seed有关,因为
seed=None
与random seed相同。
sample_2.describe().show(100)

+-------+--------------------+
|summary|            row_name|
+-------+--------------------+
|  count|              160933|
|   mean|2.921313376194685...|
| stddev| 3.50815577432219E13|
|    min|            10111444|
|    max|            99955723|
+-------+--------------------+
sample_1 == sample_2
False
sample_1.except(sample_2).isEmpty