createDataFrame

Cria a DataFrame partir de uma RDD, uma lista, uma pandas.DataFrame, uma numpy.ndarray, ou uma pyarrow.Table.

Sintaxe

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

Parâmetros

Parâmetro Tipo Descrição
data RDD ou iterável Um RDD de qualquer tipo de representação de dados SQL (, , , , , etc.), ou um Row, tuple, int, ou bool. dictlistpandas.DataFramenumpy.ndarraypyarrow.Table
schema DataType, str ou lista, opcional A DataType, uma cadeia de tipos de dados, ou uma lista de nomes de colunas. Quando é fornecida uma lista de nomes de colunas, o tipo de cada coluna é inferido a partir de data. Quando None, o esquema é inferido a partir de data (requer Row, namedtuple, ou dict). Quando é fornecida uma DataType cadeia de tipos de dados OR, deve corresponder aos dados reais.
samplingRatio Float, opcional A razão amostral de linhas usada para inferência de esquemas quando data é um RDD. Se None, são usadas as primeiras linhas.
verifySchema bool, opcional Verifique os tipos de dados de cada linha em relação ao esquema. Ativado por padrão. Não é suportado com pyarrow.Table entrada nem conversão pandas ativada por Arrow.

Devoluções

DataFrame

Notes

O uso com spark.sql.execution.arrow.pyspark.enabled=True é experimental.

Exemplos

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