till

Returnerar en ny DataFrame där varje rad är avstämd för att matcha det angivna schemat.

Syntax

to(schema: StructType)

Parameters

Parameter Type Beskrivning
schema StructType Angivet schema.

Retur

DataFrame: Avstämd dataram.

Notes

  • Ändra ordning på kolumner och/eller inre fält efter namn så att de matchar det angivna schemat.
  • Project bort kolumner och/eller inre fält som inte behövs av det angivna schemat. Kolumner och/eller inre fält som saknas (finns i det angivna schemat men inte dataramen) leder till fel.
  • Omvandla kolumnerna och/eller de inre fälten så att de matchar datatyperna i det angivna schemat, om typerna är kompatibla, t.ex. numeriska till numeriska (fel vid spill), men inte sträng till int.
  • Överför metadata från det angivna schemat, medan kolumnerna och/eller de inre fälten fortfarande behåller sina egna metadata om de inte skrivs över av det angivna schemat.
  • Det går inte om null-värdet inte är kompatibelt. Till exempel kan kolumnen och/eller det inre fältet vara null, men det angivna schemat kräver att de inte är nullbara.

Stöder Spark Connect.

Exempel

from pyspark.sql.types import StructField, StringType
df = spark.createDataFrame([("a", 1)], ["i", "j"])
df.schema
# StructType([StructField('i', StringType(), True), StructField('j', LongType(), True)])

schema = StructType([StructField("j", StringType()), StructField("i", StringType())])
df2 = df.to(schema)
df2.schema
# StructType([StructField('j', StringType(), True), StructField('i', StringType(), True)])
df2.show()
# +---+---+
# |  j|  i|
# +---+---+
# |  1|  a|
# +---+---+