У меня есть DataFrame, который выглядит примерно так. Я хочу работать в день поля date_time
.
root
|-- host: string (nullable = true)
|-- user_id: string (nullable = true)
|-- date_time: timestamp (nullable = true)
Я попытался добавить столбец для извлечения дня. Пока мои попытки потерпели неудачу.
df = df.withColumn("day", df.date_time.getField("day"))
org.apache.spark.sql.AnalysisException: GetField is not valid on fields of type TimestampType;
Это также провалилось
df = df.withColumn("day", df.select("date_time").map(lambda row: row.date_time.day))
AttributeError: 'PipelinedRDD' object has no attribute 'alias'
Любая идея, как это можно сделать?