【发布时间】:2021-06-28 14:29:38
【问题描述】:
我有下表:
from pyspark.sql import SparkSession, functions as F
spark = SparkSession.builder.getOrCreate()
cols = [ 'a1', 'a2']
data = [([2, 3], [4, 5]),
([1, 3], [2, 4])]
df = spark.createDataFrame(data, cols)
df.show()
# +------+------+
# | a1| a2|
# +------+------+
# |[2, 3]|[4, 5]|
# |[1, 3]|[2, 4]|
# +------+------+
我知道how to multiply array by a scalar。但是如何将一个数组的成员与另一个数组的对应成员相乘呢?
想要的结果:
# +------+------+-------+
# | a1| a2| res|
# +------+------+-------+
# |[2, 3]|[4, 5]|[8, 15]|
# |[1, 3]|[2, 4]|[2, 12]|
# +------+------+-------+
【问题讨论】:
标签: arrays apache-spark pyspark apache-spark-sql multiplication