我在 PySpark 中创建了一个数据框,如下所示:
df = spark.range(10)
数据框如下所示:
df.show()
+---+
| id|
+---+
| 0|
| 1|
| 2|
| 3|
| 4|
| 5|
| 6|
| 7|
| 8|
| 9|
+---+
然后我随机抽取了如下样本:
df1 = df.sample(fraction=0.5, seed=123)
采样的数据框如下所示:
df1.show()
+---+
| id|
+---+
| 0|
| 2|
| 3|
| 5|
| 6|
| 7|
+---+
我需要在采样数据框中创建一个名为“权重”的字段(
df1
)。我知道如何在 Pandas 中执行此操作,但我不知道如何在 PySpark 中执行此操作。有人可以帮我吗?
已排序!
压裂=0.5 df1 = df.sample(fraction=frac, seeds=123).withColumn("sampleWeight", lit(1/frac))