メインコンテンツまでスキップ

CSVのスキーマ

CSV 文字列を解析し、そのスキーマを DDL 形式で推測します。

構文

Python
from pyspark.sql import functions as sf

sf.schema_of_csv(csv, options=None)

パラメーター

パラメーター

Type

説明

csv

pyspark.sql.Column または文字列

CSV 文字列または CSV 文字列を含む折りたたみ可能な文字列列。

options

辞書(オプション)

解析を制御するためのオプション。CSV データソースと同じオプションを受け入れます。

パラメーター

Type

説明

csv

pyspark.sql.Column または文字列

CSV 文字列または CSV 文字列を含む折りたたみ可能な文字列列。

options

辞書(オプション)

解析を制御するためのオプション。CSV データソースと同じオプションを受け入れます。

戻り値

pyspark.sql.Column: 指定された CSV から解析されたStructTypeの文字列表現。

例 1 : 異なるデータ型のCSV文字列のスキーマを推測する

Python
from pyspark.sql import functions as sf
df = spark.range(1)
df.select(sf.schema_of_csv(sf.lit('1|a|true'), {'sep':'|'})).show(truncate=False)
Output
+-------------------------------------------+
|schema_of_csv(1|a|true) |
+-------------------------------------------+
|STRUCT<_c0: INT, _c1: STRING, _c2: BOOLEAN>|
+-------------------------------------------+

例2 : 欠損値を持つCSV文字列のスキーマを推論する

Python
from pyspark.sql import functions as sf
df = spark.range(1)
df.select(sf.schema_of_csv(sf.lit('1||true'), {'sep':'|'})).show(truncate=False)
Output
+-------------------------------------------+
|schema_of_csv(1||true) |
+-------------------------------------------+
|STRUCT<_c0: INT, _c1: STRING, _c2: BOOLEAN>|
+-------------------------------------------+

例 3 : 異なる区切り文字を使用したCSV文字列のスキーマの推測

Python
from pyspark.sql import functions as sf
df = spark.range(1)
df.select(sf.schema_of_csv(sf.lit('1;a;true'), {'sep':';'})).show(truncate=False)
Output
+-------------------------------------------+
|schema_of_csv(1;a;true) |
+-------------------------------------------+
|STRUCT<_c0: INT, _c1: STRING, _c2: BOOLEAN>|
+-------------------------------------------+

例 4 : フィールドを引用符で囲んだCSV文字列のスキーマの推測

Python
from pyspark.sql import functions as sf
df = spark.range(1)
df.select(sf.schema_of_csv(sf.lit('"1","a","true"'), {'sep':','})).show(truncate=False)
Output
+-------------------------------------------+
|schema_of_csv("1","a","true") |
+-------------------------------------------+
|STRUCT<_c0: INT, _c1: STRING, _c2: BOOLEAN>|
+-------------------------------------------+
このページの見出し