我有一个包含大约20k行的DataFrame。
我想在数据集中随机删除186行。
为了理解上下文—我正在对丢失的数据测试一个分类模型,并且每行都有一个unix时间戳。186行对应3秒(每秒62行数据)
我的目标是,当数据流时,数据很可能会消失几秒钟。我是从一个时间窗口提取特征,所以我想看看缺失的数据是如何影响模型性能的。
我认为最好的方法是将其转换为rdd
并使用filter
函数,就像这样,并将逻辑放入过滤器函数中。
dataFrame.rdd.zipWithIndex().filter(lambda x: )
但是我被逻辑卡住了-我怎么实现这个?(使用PySpark)
试着这样做:
import random
startVal = random.randint(0,dataFrame.count() - 62)
dataFrame.rdd.zipWithIndex()
.filter(lambda x: not x[<<index>>] in range(startVal, startVal+62))
这应该可以工作!