移動窗口坡度<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 插件可以滿足您的要求。
如果沒有,您能否提供帶有公式的示例數據集,我們可以為您提供進一步幫助。
謝謝,
斯坦