1

我想根据时间对排序的 Pyspark 数据帧进行训练测试拆分。假设前 300 行将在训练集中,接下来的 200 行将在测试拆分中。

我可以选择前 300 行 -

train = df.show(300)

但是如何从 Pyspark 数据框中选择最后 200 行?

4

1 回答 1

0

假设您有一个按列df排序的大小为 500的数据框。time

一个简单的方法是对训练集使用限制,并在测试集的反向数据帧上做同样的事情。

from pyspark.sql.functions import desc
train = df.limit(300)
test = df.orderBy(desc("time")).limit(200).orderBy("time")
于 2019-03-13T16:39:22.633 回答