createDataFrame

DataFrame、リスト、RDDpandas.DataFrame、またはnumpy.ndarrayからpyarrow.Tableを作成します。

構文

createDataFrame(data, schema=None, samplingRatio=None, verifySchema=True)

パラメーター

パラメーター タイプ 説明
data RDD または iterable 任意の種類の SQL データ表現 (Rowtupleintbooldictなど)、または listpandas.DataFramenumpy.ndarray、または pyarrow.Tableの RDD。
schema DataType、str、または list、省略可能 DataType、データ型文字列、または列名の一覧。 列名の一覧を指定すると、各列の型が dataから推論されます。 Noneすると、スキーマはdataから推論されます (Rownamedtuple、またはdictが必要)。 DataTypeまたはデータ型の文字列を指定する場合は、実際のデータと一致する必要があります。
samplingRatio float、省略可能 dataRDDの場合にスキーマ推論に使用される行のサンプル比率。 None場合は、最初のいくつかの行が使用されます。
verifySchema bool、省略可能 スキーマに対してすべての行のデータ型を確認します。 既定で有効になっています。 pyarrow.Table入力または方向対応 pandas 変換ではサポートされていません。

返品

DataFrame

メモ

spark.sql.execution.arrow.pyspark.enabled=Trueでの使用は試験段階です。

例示

# Create a DataFrame from a list of tuples.
spark.createDataFrame([('Alice', 1)]).show()
# +-----+---+
# |   _1| _2|
# +-----+---+
# |Alice|  1|
# +-----+---+

# Create a DataFrame from a list of dictionaries.
spark.createDataFrame([{'name': 'Alice', 'age': 1}]).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  1|Alice|
# +---+-----+

# Create a DataFrame with column names specified.
spark.createDataFrame([('Alice', 1)], ['name', 'age']).show()
# +-----+---+
# | name|age|
# +-----+---+
# |Alice|  1|
# +-----+---+

# Create a DataFrame with an explicit schema.
from pyspark.sql.types import StructType, StructField, StringType, IntegerType
schema = StructType([
    StructField("name", StringType(), True),
    StructField("age", IntegerType(), True)])
spark.createDataFrame([('Alice', 1)], schema).show()
# +-----+---+
# | name|age|
# +-----+---+
# |Alice|  1|
# +-----+---+

# Create a DataFrame with a DDL-formatted schema string.
spark.createDataFrame([('Alice', 1)], "name: string, age: int").show()
# +-----+---+
# | name|age|
# +-----+---+
# |Alice|  1|
# +-----+---+

# Create an empty DataFrame (schema is required when data is empty).
spark.createDataFrame([], "name: string, age: int").show()
# +----+---+
# |name|age|
# +----+---+
# +----+---+

# Create a DataFrame from Row objects.
from pyspark.sql import Row
Person = Row('name', 'age')
spark.createDataFrame([Person("Alice", 1)]).show()
# +-----+---+
# | name|age|
# +-----+---+
# |Alice|  1|
# +-----+---+