也許這是更多的交叉驗證問題比堆棧溢出?
我不確定您在這裏使用pvclust
的方式 - 在轉置數據集上 - 進行了修改。 當你瞭解pvclust的工作方式以及如何解釋輸出時,這更加清晰。
請接受這個答覆,因爲我不是這種方法的專家。
注意:mtcars
數據集在行上有不同的車型,在列上有不同的汽車特徵。根據行的特點對行(車型)進行聚類。
pvclust
輸出
pvclust
提供2種類型的樹狀圖紅色和綠色的數字的每個節點顯示的結果(灰色數字只是節點號)或通過print
方法:
- 綠色數字是
Bootstrap Probability * 100
(BP)並且有最直接的解釋
- 紅色數字是
Approximately Unbiased p-value * 100
(AU)並且是BP的一個修正版本以限制偏差
引導概率(BP)
BP的解釋非常簡單。在您的示例中,pvclust
將引導數據集的列(這裏是汽車的特徵)(即某些列將被刪除,其他列將會多次出現),然後重新計算行之間的歐幾里得距離並計算樹狀圖。它將重複此nboot * length(r)
次(默認爲length(r) = 10
),並且對於每次運行,它將檢查每個集羣是否同一組汽車一起存在於自舉數據集的集羣中。
在你的例子中,左邊的第一個集羣有一個BP = 0.31,這意味着這9個車型(瑪莎拉蒂寶來,克萊斯勒帝國,Pontia Firebird)結束了在同一集羣中的31個用完100個bootstraps。
這意味着,如果您要使用另一個汽車特徵的隨機樣本(但是這是否合理?),這個羣集只會出現在31%的案例中。注意:集羣內的拓撲結構可能在引導程序中有所不同。檢查的唯一標準是這些車輛是在同一個集羣中,還是不在集羣內部的關係。
至於你的第二個問題,你有這個每個節點的BP號碼,所以你可以用同樣的方式解釋任何集羣。例如,您用hclust
(包含7輛汽車:Homet 4驅動器,...,AMC Javelin)顯示的middel集羣的BP = 0.39,這可以解釋爲如上所述。
你能使用pvclust
來測試觀察(行)上的聚類嗎?
如果您可以重新採樣新的數據集,bootstrap通常用於估計統計量的可變性。 在你的例子中,如果你可以重新採樣一個新的數據集,你可能會有相同的汽車特徵 ,但一組不同的汽車模型。汽車模型是這裏的樣本/觀測數據,重新採樣觀測比特徵/變量更有意義。 pvclust
旨在用於測試變量(列)而不是觀測值(行)的聚類 。這可能是爲什麼它在列 上執行羣集,而hclust
對這些行執行羣集。
pvclust
所使用的方法起源於phyllogenetic分析,您嘗試根據基因的DNA或其他特徵聚類來自不同物種的個體。然而,phyllogenetic或基因組病例是有點奇特的。在這種情況下,觀察/樣本 是個體(DNA的來源),變量/特徵/描述符例如是基因或其表達水平。在這種情況下,根據基因對個體進行聚類並通過引導基因來測試聚類的穩定性是有意義的,因爲基因是多方面的,並且在基因庫中隨機重新取樣是合理的。
在生態學中,您通常在網站(=觀測)x物種(=變量)矩陣上工作。根據網站的具體組成情況對網站進行聚類分析是很常見的。在這種情況下,引導物種以測試位點簇的穩定性是沒有意義的,因爲整個社區應該被用來表徵位點,並且不能隨意丟棄一些物種......但是進行聚類分析是有意義的如果我們可以對一組新的地點進行重新採樣,則可以測試物種協會的穩定性。
近似無偏估計p值」(AU)
非盟應該以類似的方式被解釋爲BP,但被認爲是一個公正的版本。 但是它背後的理論是更技術的超出了我達到... 因此,先驗你應該使用這個值而不是BP來解釋你的集羣,但我想你應該更加謹慎,因爲在你的例子中對變量進行了重新採樣,因爲偏見在這種情況下,修正可能還沒有開發出來(這只是一個猜測,我不知道這是多麼有風險)
英國石油公司往往表現爲一個向下偏向的統計。例如Paradis(2011)解釋說,如果BP很高,那麼數據支持該集羣。但是,如果數據不足,可能是因爲該數據集沒有被數據支持或因爲偏見。但Efron等人(1996)認爲,這是對bootstrap方法實際測試的誤解,並且BP沒有系統地向下偏向。他們提出了另一種方法來計算這個p值,「更好地符合置信水平和假設檢驗的標準思想」,並採用「兩級自舉算法」。 Suzuki & Shimodaira用「多步多尺度自舉算法」擴展了這種方法,該算法在pvclust
中用於計算AU。
在此算法的第一步中,您重做自舉多次,但具有不同的樣本大小。在你的例子中,有11列,所以經典引導將重新取樣這些列11次,並重復這nboot時間(默認= 1000,你選擇nboot = 10)。使用「多步多尺度自舉算法」,您重複此過程1000 * 10
次(默認情況下),但是樣本大小爲5,6,7,8,9,11,12,13,14和15.這由r
該函數的參數提供了原始樣本大小(此處爲= 11)與自舉樣本大小(默認情況下爲5至15)的比率。當您運行pvclust時,它將顯示在控制檯上:Bootstrap (r = 0.45)... Done.
(即樣本量爲0.45*11 = 5
的第一組引導程序)。
參考文獻
Efron B.et al。 (1996)Bootstrap confidence levels for phylogenetic trees,Proc。 Natl Acad。科學。 93:13429-13434
Paradis,E.(2011)Analysis of Phylogenetics and Evolution with R,1st ed。斯普林格。
Shimodaira H.(2004)使用multistep-multiscale bootstrap resampling進行的近似無偏區域測試,Ann。統計。 32:2616-2641
Suzuki,R.,Shimodaira,H.,(2006)Pvclust:一種R包,用於評估層次聚類中的不確定性。 Bioinformatics 22:1540-1542
什麼是pvclust? http://www.sigmath.es.osaka-u.ac。jp/shimo-lab/prog/pvclust/ –
是的,謝謝你,亞當,在發佈我的問題之前,我發現了該網站。問題在於它不能回答我的問題,即如何使用hclust測試集羣的第二個問題。我想答案是,「主觀」的集羣並不存在,因爲它們使用pvclust並不顯着。 – user3585829
您是否注意到紅色和綠色的小數字,以及它們與「p值」的關係?但總體而言,這些p值看起來太「重要」,要逼真。顯然,對於這種方法一切都很重要... –