예를 들어, 당신은 입력 매개 변수로 배열을 사용할 수 있습니다 입력 :
>>> from pyspark.sql.types import IntegerType
>>> from pyspark.sql.functions import udf, array
>>> sum_cols = udf(lambda arr: sum(arr), IntegerType())
>>> spark.createDataFrame([(101, 1, 16)], ['ID', 'A', 'B']) \
... .withColumn('Result', sum_cols(array('A', 'B'))).show()
+---+---+---+------+
| ID| A| B|Result|
+---+---+---+------+
|101| 1| 16| 17|
+---+---+---+------+
>>> spark.createDataFrame([(101, 1, 16, 8)], ['ID', 'A', 'B', 'C'])\
... .withColumn('Result', sum_cols(array('A', 'B', 'C'))).show()
+---+---+---+---+------+
| ID| A| B| C|Result|
+---+---+---+---+------+
|101| 1| 16| 8| 25|
+---+---+---+---+------+
Scala :'myUdf (array ($ "col1", $ "col2"))' –
다른 유형의 열에 어떻게 구현할 수 있습니까? – constructor
@constructor 다른 유형의 합계 숫자도 또한 '배열'을 사용할 수 있습니다 (즉, 정수 및 이중 -> 둘 다 두 배로 형변환 됨) – Mariusz