如何在 Pyspark 中对数据框进行过采样?

Posted

技术标签:

【中文标题】如何在 Pyspark 中对数据框进行过采样?【英文标题】:How to oversample a dataframe in Pyspark? 【发布时间】:2018-08-21 11:52:32 【问题描述】:

如何在 pyspark 中对数据帧进行过采样?

df.sample(fractions, seed)

仅对 df 的一小部分进行采样,不能过采样。

【问题讨论】:

过度采样是指与原始样本相比增加样本数量吗?如果是,您打算如何通过复制记录或应用一些过采样算法来做到这一点? 定义“过采样”的含义。如果合适,请尝试提供minimal reproducible example。 【参考方案1】:

您可以使用sample method 进行过度采样,如下所示:

df.sample(withReplacement=True, total_percent_of_upsample, seed)

sample(withReplacement, fraction, seed=None)

True 表示您要进行替换采样。

【讨论】:

以上是关于如何在 Pyspark 中对数据框进行过采样?的主要内容,如果未能解决你的问题,请参考以下文章

如何在pyspark中对一组列进行分桶?

如何在 PySpark 中的大型 Spark 数据框中对行的每个子集进行映射操作

我们如何在列的每个值中对 pandas 数据框进行二次采样

如何根据条件在 Python 中对数据帧进行下采样

如何在 PySpark 中对 groupby 数据框应用条件

如何在 pyspark 中对 spark 数据框中的多列求和?