0
私はSpark 1.5.0でコードを持っています。spark dataframe reducebykey(一意でないキー値)とカスタム値の操作
ケースクラスmyCaseClass(user_idは:文字列、説明:文字列)
ここでは私のUDF
ここval getConcatenated = udf((first: String, second: String, third: String) => { first + " " + second + " " + third})
である私がしたい私は今、私のデータフレーム
val df_description = df.withColumn("description",getConcatenated(col("text1"), col("text2"), col("weight"))).select("user_id","description")
を生成するところであり、列を持つこのDFに対してreduceeByKey操作を実行します(両方とも文字列です)。私のuser_idsは一意ではなく、与えられたuser_idのすべての値/記述項目を連結したいと思います。
どうすれば実現できますか?
私はこのような何か行うことができます。
val description_rdd = df_description.map(row => myCaseClass(row.getString(0), row.getString(1)))
をしかし、どのように私はここpairedrddを生成していますか?次に、rddでCreateDataFrameメソッドを使用して、データフレームに戻したいと思っています。