用隨機產生的數字取代 NA你好,
我對 JMP 非常陌生,我正在處理測量元素濃度的資料集,其中有一些標記為「ND」的未偵測到分散在整個資料集中。 我被指示用從均勻分佈中隨機抽取的值替換所有 ND
透過兩點校準在 0 和每日檢測極限 (LOD) 之間進行調整。 我有每個元素的各種 LOD 值,但我只是遇到了實現隨機數生成以代替 ND 的問題。
任何意見都是極大的讚賞!
基礎資料分析與建模資料混合與清理數據探索和視覺化視窗回覆:用隨機產生的數字取代 NA歡迎來到社區。這是一個小腳本,將向您展示一種將 NA 值更改為隨機值的方法。
Names Default To Here( 1 );
LOD = 99; // Change to be the actual LOD value
randomMean = Mean( 0, LOD );
randomSTD = (LOD - randomMean) / 3;
col = "Age"; // Change to the actual column name
For Each Row(
If( As Column( col ) == "NA",
randomVal = LOD + 1; // Set the target value outside of the acceptable range
While( 0 < randomVal | randomVal > LOD, randomVal = Random Normal( randomMean, randomSTD ) );
As Column( col ) = Char( randomVal );
)
);
// Convert column to numeric
Column( col ) << data type( numeric ) << modeling type( continuous );
回覆:用隨機產生的數字取代 NA在實現您的想法時,您可以期待其他人的大力幫助。 我想先解決該方法的有效性。 該計劃是眾多計劃之一特別指定沒有嚴格或理論支持的方法。 它會使答案產生偏差。 看起來從隨機均勻分佈 [0...LOD] 中選擇替換值可以防止偏差。 它不會。
一種有原則的、嚴格的方法是將 LOD 作為左刪失觀察(即真實值的上限)並使用最大似然估計進行分析。 JMP 並未提供所有內容的 MLE,但它為許多分析提供了 MLE。 您計劃對這些數據進行什麼樣的分析?