createDataFrame

Hiermee maakt u een DataFrame van een RDD, een lijst, een pandas.DataFrame, een numpy.ndarrayof een pyarrow.Table.

Syntaxis

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

Parameterwaarden

Kenmerk Typ Beschrijving
data RDD of iterable Een RDD van elk type SQL-gegevensweergave (Row, tuple, int, bool, dictenzovoort) of een list, pandas.DataFrame, numpy.ndarrayof pyarrow.Table.
schema DataType, str of list, optioneel Een DataType, een gegevenstypetekenreeks of een lijst met kolomnamen. Wanneer een lijst met kolomnamen wordt opgegeven, wordt het type van elke kolom afgeleid van data. Wanneer None, schema wordt afgeleid van data (vereist Row, namedtupleof dict). Wanneer een DataType tekenreeks of gegevenstype wordt opgegeven, moet deze overeenkomen met de werkelijke gegevens.
samplingRatio float, optioneel De steekproefverhouding van rijen die worden gebruikt voor schemadeductie wanneer data een RDD. Als None, worden de eerste paar rijen gebruikt.
verifySchema bool, optioneel Controleer de gegevenstypen van elke rij op basis van het schema. Standaard ingeschakeld. Niet ondersteund met pandas-conversie met pyarrow.Table invoer of pijl.

Retouren

DataFrame

Aantekeningen

Gebruik met spark.sql.execution.arrow.pyspark.enabled=True is experimenteel.

Examples

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