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.
Extrae una sub variant de v según pathy, a continuación, convierte la sub variant en targetType. Devuelve null si la ruta de acceso no existe. Produce una excepción si se produce un error en la conversión.
Syntax
from pyspark.sql import functions as sf
sf.variant_get(v, path, targetType)
Parámetros
| Parámetro | Tipo | Description |
|---|---|---|
v |
pyspark.sql.Column o str |
Un nombre de columna o columna variant. |
path |
pyspark.sql.Column o str |
Columna que contiene las cadenas de ruta de acceso de extracción o una cadena que representa la ruta de acceso de extracción. Una ruta de acceso válida debe comenzar con $ y va seguida de cero o más segmentos como [123], .name, ['name']o ["name"]. |
targetType |
str | Tipo de datos de destino al que se va a convertir, en una cadena con formato DDL. |
Devoluciones
pyspark.sql.Column: una columna de targetType que representa el resultado extraído.
Examples
from pyspark.sql import functions as sf
df = spark.createDataFrame([ {'json': '''{ "a" : 1 }''', 'path': '$.a'} ])
v = sf.parse_json(df.json)
df.select(sf.variant_get(v, "$.a", "int").alias("r")).collect()
[Row(r=1)]
df.select(sf.variant_get(v, "$.b", "int").alias("r")).collect()
[Row(r=None)]
df.select(sf.variant_get(sf.parse_json(df.json), df.path, "int").alias("r")).collect()
[Row(r=1)]