在Pyspark中,可以使用filter
函数根据日期将数据集拆分为两个部分。以下是一个示例代码:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
# 创建SparkSession
spark = SparkSession.builder.appName("Split Dataset by Date").getOrCreate()
# 读取数据集
df = spark.read.csv("dataset.csv", header=True, inferSchema=True)
# 将日期列转换为日期类型
df = df.withColumn("date", col("date").cast("date"))
# 指定拆分日期
split_date = "2022-01-01"
# 按日期拆分数据集
df_before = df.filter(col("date") < split_date)
df_after = df.filter(col("date") >= split_date)
# 显示拆分后的数据集
df_before.show()
df_after.show()
在上面的示例中,我们首先创建了一个SparkSession,并读取了一个名为dataset.csv
的数据集。然后,我们使用withColumn
函数将日期列转换为日期类型。接下来,我们指定了一个拆分日期split_date
,并使用filter
函数根据日期将数据集拆分为两个部分。拆分前日期小于split_date
的部分保存在df_before
中,拆分后日期大于等于split_date
的部分保存在df_after
中。最后,我们使用show
函数显示拆分后的数据集。
上一篇:按日期将列表分割为子元素
下一篇:按日期将数据分组为每个唯一客户