Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengonversi kolom yang berisi input berlapis (array/map/struct) menjadi varian di mana peta dan struktur dikonversi ke objek varian yang tidak diurutkan tidak seperti struct SQL. Peta input hanya dapat memiliki kunci string.
Syntax
from pyspark.sql import functions as sf
sf.to_variant_object(col)
Parameter-parameternya
| Pengaturan | Tipe | Description |
|---|---|---|
col |
pyspark.sql.Column atau str |
Kolom dengan skema berlapis atau nama kolom. |
Pengembalian Barang
pyspark.sql.Column: kolom baru VariantType.
Examples
Contoh 1: Mengonversi array yang berisi struktur berlapis menjadi varian
from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, StructType, StructField, StringType, MapType
schema = StructType([
StructField("i", StringType(), True),
StructField("v", ArrayType(StructType([
StructField("a", MapType(StringType(), StringType()), True)
]), True))
])
data = [("1", [{"a": {"b": 2}}])]
df = spark.createDataFrame(data, schema)
df.select(sf.to_variant_object(df.v))
DataFrame[to_variant_object(v): variant]
df.select(sf.to_variant_object(df.v)).show(truncate=False)
+--------------------+
|to_variant_object(v)|
+--------------------+
|[{"a":{"b":"2"}}] |
+--------------------+