比较datetime对象和pyspark列?

dm7nw8vv  于 2021-05-18  发布在  Spark
关注(0)|答案(0)|浏览(307)

假设我使用datetime生成了一个epoch值进行比较:

from datetime import datetime, timedelta

today = datetime.now()
date_compare = today - timedelta(days=365)
data_compare = date_compare.timestamp()

我想把这个日期和pyspark列进行比较,pyspark列包含一个epoch值,这个epoch值被存储为long类型。

+------------+
|date        |
+------------+
|1585872000  |
|1599321205  |
|1590710400  |
+------------+

当我尝试对数据框中数据值大于date\u compare变量的记录使用筛选器时,即使我知道这些值大于date\u compare变量,也不会返回任何记录。我试着用这种方法:

import pyspark.sql.functions as f
df.filter(f.col(date) > f.lit(date_compare)).show()

我也试着把这个日期转换成一个很长的时间,以及一个演员,看看这是否会有帮助,但没有效果。

import pyspark.sql.functions as f
df.filter(f.col(date) > f.lit(date_compare).cast("long")).show()

pyspark应该如何解释这个datetime变量才能成功地传递它来捕获记录?在我这边运行时没有返回任何错误,因此我无法使用此筛选方法推断问题。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题