在 PySpark 采样数据帧中创建样本权重

问题描述 投票:0回答:1

我在 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 中执行此操作。有人可以帮我吗?

dataframe pyspark sample weighted
1个回答
0
投票

已排序!

压裂=0.5 df1 = df.sample(fraction=frac, seeds=123).withColumn("sampleWeight", lit(1/frac))

© www.soinside.com 2019 - 2024. All rights reserved.