要求-
在所附图片中,将前3列作为我的原始数据。有些行的quantity列为空值,这正是我要填充的内容。在理想情况下,我会用先前的已知值填充任何空值。
spark imputer似乎是一个非常容易实现的库,可以帮助我填充缺失的值。但这里的问题是,Spark插补器仅限于平均值或中位数的计算,根据所有非牛值在Dataframe中,作为一个结果,我没有得到理想的结果(第4列在图片)。
逻辑-
val imputer = new Imputer()
.setInputCols(Array("quantity"))
.setOutputCols(Array("quantity_imputed"))
.setStrategy("mean")
val model = imputer.fit(new_combinedDf)
model.transform(new_combinedDf).show()
结果-
现在是否可以将每个空值的平均值计算限制为最后n个值的平均值?i、 e对于2020-09-26,我们得到第一个空值,是否可以调整spark插补器来计算最后n个值的平均值,而不是Dataframe中的所有非空值?
暂无答案!
目前还没有任何答案,快来回答吧!