createDataFrame

Crée un DataFrame objet à partir d’une RDDliste, d’une pandas.DataFrameliste, d’un , d’un numpy.ndarrayou d’un pyarrow.Table.

Syntaxe

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

Paramètres

Paramètre Type Description
data RDD ou itérable RdD de n’importe quel type de représentation de données SQL (, , Row, , etc.), ou un tuple, , intou booldict. listpandas.DataFramenumpy.ndarraypyarrow.Table
schema DataType, str ou list, facultatif A DataType, une chaîne de type de données ou une liste de noms de colonnes. Lorsqu’une liste de noms de colonnes est fournie, le type de chaque colonne est déduit de data. Quand None, le schéma est déduit ( data nécessite Row, namedtupleou dict). Lorsqu’une DataType chaîne ou un type de données est fourni, il doit correspondre aux données réelles.
samplingRatio float, facultatif Taux d’échantillonnage des lignes utilisées pour l’inférence de schéma lorsqu’il data s’agit d’un RDD. Si None, les premières lignes sont utilisées.
verifySchema bool, facultatif Vérifiez les types de données de chaque ligne par rapport au schéma. Option activée par défaut. Non pris en charge avec pyarrow.Table la conversion d’entrée ou de pandas avec flèche.

Retours

DataFrame

Remarques

L’utilisation avec spark.sql.execution.arrow.pyspark.enabled=True est expérimentale.

Exemples

# 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|
# +-----+---+