移动窗口坡度<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />尝试计算移动窗口中的斜率。
Y = MovAvg25
X = 计数器
目标是计算数据中任何行的最小二乘斜率,移动(滑动)窗口大小为 150 点。
我相信 Index(Row()-149, Row()+0) 函数正确描述了移动窗口(这是在我意识到 JMP13 内置移动窗口函数之前,我也可以使用它)...
总数据包含1800点。 如果我将移动窗口大小更改为与 1800 一致(即 Row()-1799 而不是 Row()-149),则该公式将正确计算整体单斜率。 当使用 150 点时,错误的输出被计算为所有点的单个相同斜率(即标量,因此我知道出了问题)。
预先感谢您的任何帮助......
我拥有的

或以其他形式
如果(:计数器 >= 150,
列总和(
(:柜台
-意思是(
:柜台[
指数(
行() - 149,
行() + 0
)]
)) * (:MovAvg25
-意思是(
:MovAvg25[
指数(
行() - 149,
行() + 0
)]
))
)/
列总和(
(:柜台
-意思是(
:柜台[
指数(
行() - 149,
行() + 0
)]
)) ^ 2
),
。
)
回复:移动窗口斜坡谢谢斯坦利。 我出国一段时间了,很抱歉我花了一些时间才回到这篇文章。
回复:移动窗口斜坡你好,
我发布了一个 JMP 插件的示例,可用于计算移动斜率和截距对于给定的 x 和 y,带或不带副变量。或者,您可以设置计算中使用的点数、要增加的行数以及起始行。

请根据您的具体情况随意修改和使用。
感谢您使用 JMP!
回复:移动窗口斜坡斯坦,
当然可以。 通过“变量”(即资产)将解决最重要的需求。
计数器变量主要需要是控制斜率而无需太多数据重新格式化...... 当开始有足够的数据点时,我需要斜率来开始执行。 您的“开始于”是正确的术语。 它必须使用参数的唯一值(或第一次出现)(在我的例子中称为“计数器”)。 在我的简单例子中,我只是将数据点增加“1”,因为它们是按时间顺序接收的。 所以计数器数据是唯一的并且总是递增的,
我认为没有简单的方法可以通过公式来描述移动窗口斜率。 我认为最小二乘法的斜率计算和其他相关输出需要成为内置函数。 事实上,我也喜欢看到中值斜率计算(西格尔斜率)。
感谢并感谢您的支持。
回复:移动窗口斜坡你好,
让我修改插件以允许使用 by 或 grouping 变量,从而允许按资产计算斜率。
对于计数器变量——这是数据表中您需要开始计算的特定行或观察,即您想要指定起始行,而不是从第 1 行开始的所有行?
如果是这样,我也可以添加一个从行开始(计数器)变量。
谢谢,
斯坦
回复:移动窗口斜坡斯坦,
你的插件已经接近了。 我正在尝试做你所描述的事情,但我有很多资产需要独立计算斜率。
另外 - 我有一些计数器变量,我试图通过它来控制何时开始计算斜率。
因此,这变成了窗口大小为 150 的斜率计算,将窗口移动 1 个点(对于所有计算,窗口大小仍需要保持在 150 恒定)...在每个资产的基础上执行。
有没有办法通过公式来做到这一点(就像我正在尝试的那样)..?
作为一个选项,我可以使用您的插件,并将数据重新加入到我的主表中。但是,它必须按资产执行。 我有超过 1000 个资产(因此手动变得很困难)
谢谢。
回复:移动窗口斜坡你好,
让我看看我是否理解你的问题——
您想计算固定行数(点)的斜率并使用增量或偏移量重复吗?
在下面的示例中使用 Bigclass.jmp:

产生以下输出表:

如果是这样,我有一个 JMP 插件可以满足您的要求。
如果没有,您能否提供带有公式的示例数据集,我们可以为您提供进一步帮助。
谢谢,
斯坦