をSpark 2.x
から新しい(厳密にタイプされた)に適応しようとしていますが、Window
の機能を使用するときはタイプ情報を維持するのに苦労しています。 (それは私のDataset[(Measurement,Column)]
を与えるよう)強く型付けされたSparkデータセットでは、どのようにWindow Aggrgateを使用しますか?
case class Measurement(nb:Long,x:Double)
ds
Dataset[Measurement]
され、私を与える代わりにDataset[(Measurement,Double)]
がwithColumn
を使用して、私は
ds.map{m => (m,sum($"x").over(Window.orderBy($"nb"))}
ような何かをしたいと思います。しかし、これは動作しません。 a Dataset[Row]
、タイプ情報が失われています:
ds.withColumn("cumsum",sum($"x").over(Window.orderBy($"nb")))
したがって、強く型付けされたDatasets
にWindow
関数を使用するより良い方法はありますか?
'ds.withColumn( "CUMSUM"、SUM($ "X")で見つけることができますここで見つけることができます。オーバー( Window.orderBy($ "nb"))) 'あなたは' Dataset((Measurement、Double) '行を賢明に持っているはずです。 –