我有一个数据框df
,其中包含一列"freq"
,该列的每一行代表选择该行进行输出的概率。我目前正在使用sampleBy进行采样:
frac = dict(
(e.freq, e.freq)
for e
in df.select("freq").distinct().collect()
)
result = df.sampleBy("freq", fractions = frac)
这是受this启发的,但似乎不太干净。有没有一种方法可以避免创建类似lambda x: x
编辑:
说数据集是
+-----+----+----
| Name|freq| other columns
|Alice| 0.3|
| Bob| 0.2|
| Joe| 0.3|
...
我希望最终的数据帧包含Alice和Joe的行,每个行的概率为0.3,Bob的行的概率为0.2,依此类推。