Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Combine dos matrices dadas, en modo de elemento, en una sola matriz mediante una función . Si una matriz es más corta, los valores NULL se anexan al final para que coincidan con la longitud de la matriz más larga, antes de aplicar la función. Soporta Spark Connect.
Para obtener la función SQL de Databricks correspondiente, consulte zip_with function.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.zip_with(left=<left>, right=<right>, f=<f>)
Parámetros
| Parámetro | Tipo | Description |
|---|---|---|
left |
pyspark.sql.Column o str |
Nombre de la primera columna o expresión. |
right |
pyspark.sql.Column o str |
Nombre de la segunda columna o expresión. |
f |
function |
Una función binaria. |
Devoluciones
pyspark.sql.Column: matriz de valores calculados derivados mediante la aplicación de una función dada a cada par de argumentos.
Examples
Ejemplo 1: Combinar dos matrices con una función simple
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, [1, 3, 5, 8], [0, 2, 4, 6])], ("id", "xs", "ys"))
df.select(dbf.zip_with("xs", "ys", lambda x, y: x ** y).alias("powers")).show(truncate=False)
+---------------------------+
|powers |
+---------------------------+
|[1.0, 9.0, 625.0, 262144.0]|
+---------------------------+
Ejemplo 2: Combinar matrices de diferentes longitudes
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, ["foo", "bar"], [1, 2, 3])], ("id", "xs", "ys"))
df.select(dbf.zip_with("xs", "ys", lambda x, y: dbf.concat_ws("_", x, y)).alias("xs_ys")).show()
+-----------------+
| xs_ys|
+-----------------+
|[foo_1, bar_2, 3]|
+-----------------+