PySpark使用最频繁的项目替换频率较低的项目

时间:2017-11-09 18:15:21

标签: apache-spark pyspark apache-spark-sql spark-dataframe apache-spark-mllib

我在数据框中有一个分类列,它有一些级别,现在我想用最频繁的级别替换那些频率较低的级别(其总频率百分比小于指定百分比)。我怎么会以优雅和紧凑的方式认识到这一点?

下面是一个例子,如果我将指定的频率设置为0.3,那么级别“c”应该被级别“a”替换,因为它的频率只有1/6,低于0.3。

from pyspark.sql import Row

row = Row("foo")

df = sc.parallelize([ row("a"), row("b"), row("c"), row("a"), row("a"), row("b") ]).toDF()

1 个答案:

答案 0 :(得分:0)

希望这有帮助!

GEOMETRY="${SCREEN_WIDTH}x${SCREEN_HEIGHT}x${SCREEN_DEPTH}"
Xvfb :99 -screen 0 $GEOMETRY &
export DISPLAY=:99
pybot --outputdir /out /tests

输出是:

Wait Until Page Contains    dashboard    15s