try_to_time

Převede sloupec na TimeType pomocí volitelného formátu. Zadejte formáty podle vzoru data a času. Ve výchozím nastavení se řídí pravidly přetypování na TimeType, pokud je formát vynechán. Ekvivalent k col.cast("time"). Funkce vždy vrátí hodnotu null pro neplatný vstup.

Syntaxe

import pyspark.sql.functions as sf

sf.try_to_time(str=<str>)

# With format
sf.try_to_time(str=<str>, format=<format>)

Parametry

Parameter Typ Description
str pyspark.sql.Column nebo str Řetězec, který se má analyzovat podle času.
format pyspark.sql.Column nebo str Optional. Vzor formátu času, který se má sledovat.

Návraty

pyspark.sql.Column: časová hodnota jako pyspark.sql.types.TimeType typ.

Examples

Příklad 1: Převeďte řetězec na čas.

import pyspark.sql.functions as sf
df = spark.createDataFrame([("10:30:00",)], ["str"])
df.select(sf.try_to_time(df.str).alias("time")).show()
+--------+
|    time|
+--------+
|10:30:00|
+--------+

Příklad 2: Převod řetězce na čas s formátem

import pyspark.sql.functions as sf
df = spark.createDataFrame([("10:30:00", "HH:mm:ss")], ["str", "format"])
df.select(sf.try_to_time(df.str, df.format).alias("time")).show()
+--------+
|    time|
+--------+
|10:30:00|
+--------+

Příklad 3: Selhání převodu má za následek hodnotu NULL.

import pyspark.sql.functions as sf
df = spark.createDataFrame([("malformed",)], ["str"])
df.select(sf.try_to_time(df.str).alias("time")).show()
+----+
|time|
+----+
|NULL|
+----+