Apache spark 他的值是5,5,5,5,7,var2是4,4,4,4,4。好了,检查我的第一个答案,从3个时间戳开始[670098928],[670098930],[670098934],最后,670098928和670098938之间的所有11个时间戳都在一行。你必须根

Apache spark 他的值是5,5,5,5,7,var2是4,4,4,4,4。好了,检查我的第一个答案,从3个时间戳开始[670098928],[670098930],[670098934],最后,670098928和670098938之间的所有11个时间戳都在一行。你必须根,apache-spark,pyspark,apache-spark-sql,time-series,Apache Spark,Pyspark,Apache Spark Sql,Time Series,他的值是5,5,5,5,7,var2是4,4,4,4,4。好了,检查我的第一个答案,从3个时间戳开始[670098928],[670098930],[670098934],最后,670098928和670098938之间的所有11个时间戳都在一行。你必须根据变量调整规则,但这是可行的。发布一个例子,如果你不明白,我会详细说明。嗨,零。又是一个非常详细的回答。只有一个问题:如果时间戳不匹配,如何将epoch数据帧与原始数据帧连接起来?假设var1和var2有不同的时间戳,但两者都应该和时代相匹配。


他的值是5,5,5,5,7,var2是4,4,4,4,4。好了,检查我的第一个答案,从3个时间戳开始[670098928],[670098930],[670098934],最后,670098928和670098938之间的所有11个时间戳都在一行。你必须根据变量调整规则,但这是可行的。发布一个例子,如果你不明白,我会详细说明。嗨,零。又是一个非常详细的回答。只有一个问题:如果时间戳不匹配,如何将epoch数据帧与原始数据帧连接起来?假设var1和var2有不同的时间戳,但两者都应该和时代相匹配。我知道你们发布的scala forward fill。有机会在PySpark中这样做吗?@Matthias我需要一个团队,所以使用groupby和pandas_udf。@zero323给出这个答案已经过了一段时间。事情变了吗?@zero323一旦您使用您描述的连接对数据进行了采样,我不明白为什么您不能简单地使用窗口函数来反向填充或正向填充缺少的值?在我看来,您可以通过“ts_重采样”进行订购,并在当前和未绑定的前置(ffill)或当前和未绑定的后续(bfill)之间取最大或最小的“ts”。然后在“ts”上加入以获取缺少的值。一切都在星火中处理。非常感谢。
#Variable     Time                Value
#852-YF-007   2016-05-10 00:00:00 0
#852-YF-007   2016-05-09 23:59:00 0
#852-YF-007   2016-05-09 23:58:00 0
col("epoch").cast("timestamp")
from pyspark.sql.functions import timestamp_seconds

timestamp_seconds("epoch")