2
もっと良い方法はありますか?列の平均を使ってDataFrameに列を追加する方法
val mean = df.select(avg("date")).first().getDouble(0)
df.withColumn("mean", lit(mean))
私はそれは価値がある、それがアクションを呼び出す避けるためにできることを前提とし...
もっと良い方法はありますか?列の平均を使ってDataFrameに列を追加する方法
val mean = df.select(avg("date")).first().getDouble(0)
df.withColumn("mean", lit(mean))
私はそれは価値がある、それがアクションを呼び出す避けるためにできることを前提とし...
外積でbroadcast
を使用して、追加のアクションを回避することが可能である:
import org.apache.spark.sql.functions.broadcast
df.crossJoin(broadcast(df.agg(avg("date"))))
か:
spark.conf.set("spark.sql.crossJoin.enabled", true)
df.join(broadcast(df.agg(avg("date"))))
あなたはをしないでくださいは、ウィンドウ関数を使用している:
df.withColumn("avg", avg("date").over())