首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyspark - Sample,无需替换

Pyspark - Sample,无需替换
EN

Stack Overflow用户
提问于 2017-11-10 18:56:13
回答 1查看 390关注 0票数 0

正如我注意到的,我有一个非常不平衡的变量。因此,我想通过给变量的每个类赋予权重来对其进行采样。这是我的数据集(dd):

代码语言:javascript
复制
l = [('Alice', 1),('Alice', 1),('Alice', 1),('Alice', 1),('Alice', 1),('Alice',1),('Mary', 1),('Alice', 1),('Alice', 1),('Mary', 1)]
dd == spark.createDataFrame(l)

dd.show()
+-----+------+
| Name| Label|
+-----+------+
|Alice|     1|
|Alice|     1|
|Alice|     1|
|Alice|     1|
|Alice|     1|
|Alice|     1|
| Mary|     1|
|Alice|     1|
|Alice|     1|
| Mary|     1|
+-----+------+

我希望Alice和Mary在我的数据集上有相同的百分比。我使用了以下内容:

代码语言:javascript
复制
  sampledDf = dd.sampleBy("_1", fractions={"Alice":0.5, "Mary":0.5}, seed=1234)

并且我没有得到任何错误。但是,当我尝试查看sampledDf (sampledDf.show())时,我的命令没有运行。

哪种方法是正确的?

EN

回答 1

Stack Overflow用户

发布于 2017-11-10 20:59:50

这就是你想要的结果吗:

代码语言:javascript
复制
+-----+---+
|   _1| _2|
+-----+---+
|Alice|  1|
|Alice|  1|
| Mary|  1|
|Alice|  1|
| Mary|  1|
+-----+---+

您能提供所需的输出吗?

还要检查命令是否在后台运行或已崩溃

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47221186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档