簡體   English   中英

Apache spark dataframe C# 中的移動平均線

[英]Moving average in Apache spark dataframe C#

在我的數據庫中有一些樣本我已導入 apache spark Dataframe。 我需要在 C# 中的當前樣本之前添加另一列具有 n 個樣本的移動平均值。

這是我的 dataframe:

DataFrame frame = jdbcDf
            .Where("SubjectKey = 104")
            .Select("Timestamp", "Current").Sort("Timestamp");

我找到了這段代碼:

 val movAvg = sampleData.withColumn("movingAverage", AVG(sampleData("Current"))
             .over( Window.partitionBy("Role").rowsBetween(-1,1)) )

但是要在我的代碼中使用 window class 。 如何計算移動平均線? 這樣做時如何處理 Null 值?

我設法找到正確的語法:

DataFrame frame = jdbcDf
            .Where("SubjectKey = 104")
            .Select("Timestamp", "Current");
var windowSp = Microsoft.Spark.Sql.Expressions.Window.RowsBetween(-10, -1);
var movAvg = result.Sort("Timestamp").WithColumn("movingAverage", 
Avg(result["Diff"]).Over(windowSp));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM