Python PySpark时间戳格式
我有一个带有日期字段的csv文件。下面是该字段中的一个示例值:-Python PySpark时间戳格式,python,pyspark,Python,Pyspark,我有一个带有日期字段的csv文件。下面是该字段中的一个示例值:-2020-05-25 17:00:27 我正在使用以下代码由于某些原因,日期字段仍然显示为字符串。 df = (spark.read .format("csv") .option("header","true") .option("inferSchema","true
2020-05-25 17:00:27
我正在使用以下代码由于某些原因,日期字段仍然显示为字符串。
df = (spark.read
.format("csv")
.option("header","true")
.option("inferSchema","true")
.option("timestampFormat","yyyy-MM-dd HH:mm:ss")
.load(file)
)
不知道为什么你会得到一个字符串。但您可以在读取
df
后将日期字段转换为时间戳:
df = df.withColumn('date_field', col('date_field').cast("timestamp"))
您必须提供模式和文件路径
from pyspark.sql.types import TimestampType, StructType, StructField, StringType
schema = StructType([
StructField('col1', StringType(), True),
StructField('date_col', TimestampType(), True),
StructField('col3', StringType(), True)
])
df = (spark.read
.format("csv")
.option("header","true")
.option("inferSchema","true")
.load(file, schema=schema)
)