如何计算选定行的移动平均值大家好!
我正在尝试编写一个脚本,使用表中选定的行计算移动平均值。
设置舞台:
我有一张数据表(附有示例),其中包含 3 个阶段流程(A、B、C)的多次执行(唯一 ID)。每个阶段都有一个报告值,这些值相加可得出每个阶段的总值。我希望有一列报告总计的移动平均值。我查看了一些讨论,并获得了一些关于如何执行此操作的好建议(即,每个唯一 ID 的移动平均值... 此示例很有帮助,公式位于:移动平均值(唯一 ID)。
下一步我想做的是只在本次评估中包含一部分运行结果。运行结果以红色突出显示,所需结果(本例中为仅三次的移动平均值)位于:所需结果中。
我在使用脚本选择运行子集进行评估时遇到了麻烦。
另外 - 我对 JSL 还比较陌生,也欢迎大家就如何以更清洁或更有效的方式获得最终结果提出建议。
提前感谢您的帮助!
克里斯
自动化和脚本基础数据分析与建模数据混合和清理回复:如何计算选定行的移动平均值这三行的选择是基于什么的?
回复:如何计算选定行的移动平均值雅尔莫,
此过程在两种不同的设置下运行:一种设置用于开发用途,另一种设置用于“官方”用途(如果有意义的话)。
而这三条线代表后者。对于移动平均线,我不想包括开发运行。但是,我确实想在跟踪/趋势表中包括所有数据。所以我有一个代表所有设置/操作员/等的“单一事实来源”。所附表格仅代表一组最少的信息,以帮助解决 JMP 社区的问题。
多年来,我一直在构建类似的数据集,最近才开始使用 JSL 尝试开发更高效的工作流。不过,我没有任何编码背景,所以我的学习曲线仍然很陡峭。这个小组真的很有帮助!
克里斯
回复:如何计算选定行的移动平均值我只是想知道如何选择那些正确的感兴趣的行?是根据颜色还是特定列中的单元格来完成的?您是否手动选择行,然后根据选定的行计算移动平均值?
例如,你可以给出一些分组列,然后利用它
If(!Is Missing(:Group),
Col Moving Average(As Column("Total (Sum of Stages for each Unique ID)"), 1, :Group),
.
)

您还可以创建仅这些行的子集(可能是链接的行)以使计算更简单(编辑:这不适用于链接子集,即使它在预览中看起来像这样)
Col Moving Average(As Column("Total (Sum of Stages for each Unique ID)"), 1)

Col 移动平均线(名称,选项, )可以很好地阅读,因为它是最令人困惑的公式函数之一
回复:如何计算选定行的移动平均值啊……现在我明白你的问题了。
我想选择行,其中:包括 == 是。有没有更好的方法?
我会阅读该文档...我肯定被该功能搞糊涂了!
克里斯
回复:如何计算选定行的移动平均值啊..所以您想计算包含行的 col 移动平均值,但只在每个唯一 ID 的最后一行报告它?

请注意,这将使用组中的所有值(而不仅仅是最后的值)来计算移动平均值,但它会在最后一行报告它(删除 if 语句以查看它的实际作用)
If(:To Include == "Yes" & Row() == Col Max(Row(), :Unique ID),
Col Moving Average(:"Total (Sum of Stages for each Unique ID)"n, 1, :To Include),
.
)

您也可以仅基于最后一行执行计算,但计算会变得越来越慢,并且越来越难以阅读
If(:To Include == "Yes" & Row() == Col Max(Row(), :Unique ID),
Col Moving Average(
If(Row() == Col Max(Row(), :Unique ID),
:"Total (Sum of Stages for each Unique ID)"n,
.
),
1,
:To Include
),
.
)
当你将其分解成许多单独的公式时,这些公式最容易理解
回复:如何计算选定行的移动平均值非常感谢!我会开始玩这个。
C