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