json_tuple
Crée une nouvelle ligne pour une colonne JSON en fonction des noms de champs donnés.
Syntaxe
Python
from pyspark.sql import functions as sf
sf.json_tuple(col, *fields)
parameter
parameter | Type | Description |
|---|---|---|
|
| Colonne de chaîne au format JSON. |
| str | Un champ ou des champs à extraire. |
Renvoie
pyspark.sql.Column: une nouvelle ligne pour chaque valeur de champ donnée à partir d'un objet JSON
Exemples
Python
from pyspark.sql import functions as sf
data = [("1", '''{"f1": "value1", "f2": "value2"}'''), ("2", '''{"f1": "value12"}''')]
df = spark.createDataFrame(data, ("key", "jstring"))
df.select(df.key, sf.json_tuple(df.jstring, 'f1', 'f2')).collect()
Output
[Row(key='1', c0='value1', c1='value2'), Row(key='2', c0='value12', c1=None)]