Bagikan melalui


to_csv

Mengonversi kolom yang berisi menjadi StructType string CSV. Melempar pengecualian, dalam kasus jenis yang tidak didukung.

Syntax

from pyspark.sql import functions as sf

sf.to_csv(col, options=None)

Parameter-parameternya

Pengaturan Tipe Description
col pyspark.sql.Column atau str Nama kolom yang berisi struct.
options dict, opsional Opsi untuk mengontrol konversi. Menerima opsi yang sama dengan sumber data CSV.

Pengembalian Barang

pyspark.sql.Column: String CSV yang dikonversi dari yang diberikan StructType.

Examples

Contoh 1: Mengonversi StructType sederhana ke string CSV

from pyspark.sql import Row, functions as sf
data = [(1, Row(age=2, name='Alice'))]
df = spark.createDataFrame(data, ("key", "value"))
df.select(sf.to_csv(df.value)).show()
+-------------+
|to_csv(value)|
+-------------+
|      2,Alice|
+-------------+

Contoh 2: Mengonversi StructType yang kompleks menjadi string CSV

from pyspark.sql import Row, functions as sf
data = [(1, Row(age=2, name='Alice', scores=[100, 200, 300]))]
df = spark.createDataFrame(data, ("key", "value"))
df.select(sf.to_csv(df.value)).show(truncate=False)
+-------------------------+
|to_csv(value)            |
+-------------------------+
|2,Alice,"[100, 200, 300]"|
+-------------------------+

Contoh 3: Mengonversi StructType dengan nilai null menjadi string CSV

from pyspark.sql import Row, functions as sf
from pyspark.sql.types import StructType, StructField, IntegerType, StringType
data = [(1, Row(age=None, name='Alice'))]
schema = StructType([
  StructField("key", IntegerType(), True),
  StructField("value", StructType([
    StructField("age", IntegerType(), True),
    StructField("name", StringType(), True)
  ]), True)
])
df = spark.createDataFrame(data, schema)
df.select(sf.to_csv(df.value)).show()
+-------------+
|to_csv(value)|
+-------------+
|       ,Alice|
+-------------+

Contoh 4: Mengonversi StructType dengan jenis data yang berbeda ke string CSV

from pyspark.sql import Row, functions as sf
data = [(1, Row(age=2, name='Alice', isStudent=True))]
df = spark.createDataFrame(data, ("key", "value"))
df.select(sf.to_csv(df.value)).show()
+-------------+
|to_csv(value)|
+-------------+
| 2,Alice,true|
+-------------+