協助中位數拋光你好,
我有一些基於細胞的篩選數據,其中存在一種行性偽影,導致奇數行(A、C 等)的訊號強度略低於偶數行(B、D 等)。雖然理想的解決方案是消除設備本身的誤差,但我也希望對數據進行平滑處理,以挽救並提高命中率。我閱讀過一些論文,其中提到 Tukey 中值平滑法可用於篩選數據,以消除空間偏差,但我不知道如何在 JMP 中實現它,也不知道它是否已經內建了相關工具。我知道我可以透過計算行/列中位數並進行迭代來獲得一次平滑效果,但 Tukey 中值平滑法的強大之處在於它可以迭代 n 次,直到行和列中位數的變化可以忽略不計。我想知道是否有人可以幫我編寫一個腳本,或者推薦一個可以完成這項任務的插件?如果能有一個類似其他分析工具的圖形使用者介面視窗就太好了,我可以在那裡輸入y變數、行和列,以及任何「by」變數。最好還能有一個輸入框來輸入迭代次數,或提供某種殘差檢驗,以便程式能夠自動判斷何時停止迭代,並在每次迭代結束後顯示結果。我對JMP非常陌生,所以這對我來說有點難,但我非常感謝任何幫助!我認為這對於篩選分析工具來說也是一個強大的補充,因為它已被證明可以更好地平滑數據,使命中結果的可靠性更高。先感謝!
-年
中位數拋光相關資訊連結:
https://en.wikipedia.org/wiki/Median_polish
進階統計建模自動化和腳本編寫回覆:關於如何進行中位數拋光的幫助我不認為 JMP 本身提供了中位數拋光函數,但是,JMP 與 Python 或 R 的介面可讓您存取它們的中位數拋光函數。
回覆:關於如何進行中位數拋光的幫助此外,如果您只想消除隔行偏差,只需在圖形使用者介面中點擊幾下即可完成。您也可以選擇“標準化”而不是“居中”。

聽起來確實像是個很有趣的腳本寫練習。如果我用JSL編寫腳本,我可能會按照這個影片裡的步驟來做。
回覆:關於如何進行中位數拋光的幫助然後或許可以將列平均值()替換為Col Median()。
要應用完整的中位數拋光,數據必須適合這樣做…
否則,許多有價值的(至關重要的!)資訊就會「意外」被刪除。
回覆:關於如何進行中位數拋光的幫助另一種方法…
哦,這次我就不提了。
回覆:關於如何進行中位數拋光的幫助我會幫你提! @hogi的標準化 GUI也能做到這一點。
回覆:關於如何進行中位數拋光的幫助嗨,吉姆,
謝謝回覆。我原本希望避免自己從頭開始開發,而是利用其他人已經做出來的東西!
再次感謝,
年
回覆:關於如何進行中位數拋光的幫助嗨,傑德,
感謝您的回覆。能否詳細描述一下截圖中的操作?我對這些選項不太熟悉。
至於腳本編寫,我理解中間值優化的步驟,但由於它是迭代的,我需要一些時間才能編寫出靈活的腳本/實作方案。希望有人能幫我實現,或是推薦一個現成的腳本給我!
回覆:關於如何進行中位數拋光的幫助謝謝你們兩位!
我嘗試過類似的方法,用函數處理後資料確實有所改善!我取了每一行所有測試孔的中位數(因為在合適的條件下,高通量篩選中大多數測試孔都不會是陽性結果),並以此進行歸一化。這種方法在緩解行效應和篩選陽性結果方面效果不錯。
-年
回覆:關於如何進行中位數拋光的幫助嗨@amichaud ,
以下是上述情況的簡要概述:
- 既然你提到了偶數行和奇數行,我就創建了一個交替為 0 和 1 的列,稱為偏差。
- 右鍵點選「偏差」列,選擇「新公式列」>「分組依據」。這不會建立任何新列,而是將「偏差」列設定為未來所有公式列的分組列。
- 右鍵單擊 Y 列,然後選擇“新公式列”>“分佈”>“居中”,即可將 Y 列的值以 0 為中心進行轉換,此操作會針對任何給定的分組變數迭代執行。這表示「偏差」列中的 0 和 1 將分別進行轉換。這實際上只是基於奇偶行對樣本進行去偏差的另一種方法。您也可以選擇“分佈”>“標準化”來實現此目的。
- 該圖只是為了直觀地展示這一點。底部的圖表針對每個偏差組都採用了不同的擬合曲線,但頂部的圖表對兩個偏差組都採用了相同的擬合曲線,因為透過中心化消除了偏差。
此外,根據您的特定需求,您也可以將「偏差」欄位作為影響因素新增至您建立的任何模型中。這樣,分析器就能讓您查看並操作該影響因素,而無需更改任何資料。我附上了一個更新後的數據表來演示這一點。
