SQLデータフレームの列の要素を乗算するのが難しいです。pyspark SQLデータフレームのスパースベクトルの行を掛ける
sv1 = Vectors.sparse(3, [0, 2], [1.0, 3.0])
sv2 = Vectors.sparse(3, [0, 1], [2.0, 4.0])
def xByY(x,y):
return np.multiply(x,y)
print(xByY(sv1, sv2))
上記は機能します。
ただし、以下は該当しません。
xByY_udf = udf(xByY)
tempDF = sqlContext.createDataFrame([(sv1, sv2), (sv1, sv2)], ('v1', 'v2'))
tempDF.show()
print(tempDF.select(xByY_udf('v1', 'v2')).show())
多くの感謝!
あなたが得るエラーが何でありますか? –