如何在 x 軸的特定值執行標準最小平方法迴歸?
對於更多上下文 - 我繪製了電壓與電流的關係圖,並且在值 -10A -5A 5A 10A 處,我需要一個包含這些值周圍許多點的標準最小回歸模型。 我想像在我的數據上用 4 個點或 4 個小線來表示這一點。
我有 JMP 17 pro,目前對所有資料集都執行此操作,但這不是我需要的。
透過 JMP 分析來執行此操作的方法優於腳本,但任何方法都很棒:)
你好@MedianRooster10 ,
您能否分享一個範例資料表,以便我們了解資料的結構? 這可能有助於更快地找到解決方案。
我想到的一個想法是,您有一列將不同的當前群組分類為名義資料類型。 您可能有 :Current 列數值,例如 -10、-5、5、10,但您可以有一個包含以下文字的列-10A -5A 5A 10A,對於電流的每個分組,然後當您進行標準 LS 回歸時,您使用此列作為「BY」變數。
這就像使用 Big Class.jmp 檔案並建模 :height 作為 Y,:weight 作為 X,然後 :sex 作為“BY”變數。 這將為您提供所有 Y 分組到不同電壓範圍的模型。 這可能不是您想要的,但同樣,獲取範例資料表將有助於了解資料的結構並提供更具體的解決方案。
希望這可以幫助!,
DS
你好@SDF1
我不認為這就是我所追求的。
我附上了 1 個溫度的資料子集和我產生的圖表。
它不是線性圖,但我確實想要部分線性迴歸。 例如,我想取 10 個最接近 5A 的數據點併計算其最小平方(將其繪製為圖表上的數據點)。
感謝您的幫忙!
你好@MedianRooster10 ,
我認為你正在嘗試進行分段回歸。 您可以使用函數資料瀏覽器或非線性平台來完成此操作。
此 JMP 部落格可能會幫助您在非常相似的用例上實現這種回歸類型:使用 JMP 非線性平台擬合分段函數
希望對你有幫助,
你好@MedianRooster10 ,
感謝您提供數據表,這有助於更好地理解事物。
如果您不需要對所有資料進行最小二乘擬合,而只需對某個片段或多個片段進行擬合,我仍然認為使用某種識別列是正確的方法,並將其在模型中用作BY 變數或作為本機資料過濾器。 我還猜測您可能必須對許多數據表或列執行此操作,這意味著編寫腳本實際上是一個非常好的方法。
如果您想使用一些腳本來完成此操作,其餘部分與JMP 接口,下面是一些代碼,它將對您的數據表進行排序,創建一個新的數據表,生成一個名為:Segment 的列,然後為該段分配一個值選擇。 在程式碼中,目標是目標當前值——我選擇了10,範圍是它兩側的資料點數。如果您隨後執行常規標準最小二乘法並使用 :Segment 列作為本機資料篩選器,則可以選擇段 2 並獲得適合資料的最小二乘法。
Names Default To Here( 1 );
Current Data Table() << Sort( By( :"Current(A)"n ), Order( Ascending ), Output Table( "Sorted.jmp" ) );
dt = Data Table("Sorted");
dt << New Column( "Segment", "Continuous", "Ordinal" );
range = 5; //rows to group on either side of target
target = 10; //5A
rows = Current Data Table() << Get Rows Where( (:"Current(A)"n >= target - 0.3 & :"Current(A)"n <= target + 0.3) );
For( i = 1, i <= N Rows(dt), i++,
If(
i < rows - range, :Segment[i] = 1,
(i >= rows - range & i <= rows + range), :Segment[i] = 2,
i > rows + range, :Segment[i] = 3
)
);您將獲得如下所示的輸出。

如果您在 SLS 模型擬合中使用分段列作為 BY 變量,那麼當您獲得資料模型時,您可以按住 CTRL 鍵並左鍵單擊「響應電壓」名稱之一附近的紅色熱按鈕,然後選擇“儲存列”>“預測公式”,這會將預測公式列儲存到資料表中,其中根據段編號使用不同的方程式。



現在,這當然是一種方法。
另一種方法是在圖形產生器中製作電壓與電流的圖形,然後使用套索工具(在放大鏡旁邊,選單下)選擇您想要擬合的資料。

然後轉到“行”>“行選擇”>“反轉行選擇”。

然後右鍵單擊其中一個行號並選擇隱藏和排除。 然後,當您轉到標準最小二乘模型平台時,您可以僅對那些未隱藏和排除的資料點進行建模。
在下面的範例中,您可以看到模型和 SLS 與資料的擬合。 從預測殘差圖中,您可以看到一些曲率,因此我添加了當前*當前項,並且您可以通過稍微隨機的殘差獲得更好的擬合。


如果您確實知道資料的不同分段部分的公式的函數形式,那麼我會按照 Victor 提到的使用非線性平台的方式進行處理。 但是,您需要了解每個部分的功能形式,並知道在哪裡「分割」資料。
在這和 Victor 發布的內容之間,您應該已經足夠開始了。
希望這可以幫助!,
DS