Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Načte soubory JSON a vrátí výsledky jako .DataFrame Řádky JSON (JSON s oddělovači nového řádku) se ve výchozím nastavení podporují. Pro JSON s jedním záznamem multiLine na soubor nastavte možnost na True.
Pokud schema není zadáno, tato funkce načte vstup jednou, aby určila vstupní schéma.
Syntaxe
json(path, schema=None, **options)
Parametry
| Parameter | Typ | Description |
|---|---|---|
path |
str, list nebo RDD | Cesta k datové sadě JSON, seznam cest nebo RDD řetězců, které ukládají objekty JSON. |
schema |
StructType nebo str, volitelné | Volitelné vstupní schéma jako StructType objekt nebo řetězec formátovaný DDL (například 'col0 INT, col1 DOUBLE'). |
Návraty
DataFrame
Příklady
Zapište datový rámec do souboru JSON a přečtěte si ho zpátky.
import tempfile
with tempfile.TemporaryDirectory(prefix="json") as d:
spark.createDataFrame(
[{"age": 100, "name": "Hyukjin"}]
).write.mode("overwrite").format("json").save(d)
spark.read.json(d).show()
# +---+-------+
# |age| name|
# +---+-------+
# |100|Hyukjin|
# +---+-------+
Čtení JSON z více adresářů
from tempfile import TemporaryDirectory
with TemporaryDirectory(prefix="json2") as d1, TemporaryDirectory(prefix="json3") as d2:
spark.createDataFrame(
[{"age": 30, "name": "Bob"}]
).write.mode("overwrite").format("json").save(d1)
spark.createDataFrame(
[{"age": 25, "name": "Alice"}]
).write.mode("overwrite").format("json").save(d2)
spark.read.json([d1, d2]).show()
# +---+-----+
# |age| name|
# +---+-----+
# | 25|Alice|
# | 30| Bob|
# +---+-----+
Přečtěte si JSON s vlastním schématem.
import tempfile
with tempfile.TemporaryDirectory(prefix="json") as d:
spark.createDataFrame(
[{"age": 30, "name": "Bob"}]
).write.mode("overwrite").format("json").save(d)
spark.read.json(d, schema="name STRING, age INT").show()
# +----+---+
# |name|age|
# +----+---+
# | Bob| 30|
# +----+---+