時出現錯誤我正在嘗試使用包與pvclust包進行聚類分析。使用''病房''方法與pvclust R包
具體來說,我有一個由物種(行)和採樣站(列)組成的數據矩陣。我想執行一個CA,以便根據我的物種丰度(我之前記錄(x + 1)變換)將我的採樣站分組。
一旦準備好了我的矩陣,我試着根據pvclust包運行CA,使用Ward的聚類方法和Bray-Curtis作爲距離索引。然而,每次我得到以下錯誤消息:
「」在hclust(距離,方法= method.hclust)錯誤: 無效聚類方法「」
我然後試圖執行使用另一個相同的分析集羣方法,我沒有問題。我也嘗試使用素食主義者包裝中的hclust功能執行相同的分析,而且我也沒有任何問題。分析運行沒有任何問題。
爲了更好地理解我的問題,我會展示我的矩陣的一部分, 腳本,我以前會藉此分析:
P1 P2 P3 P4 P5 P6
1 10.8750000 3.2888889 2.0769231 1.4166667 3.2395833 5.333333
3 0.3645833 0.3027778 0.3212038 0.7671958 0.4993676 0.000000
4 0.0000000 0.0000000 2.3500000 0.0000000 0.0000000 0.264000
5 0.0000000 0.7333333 0.2692308 0.0000000 0.2343750 0.000000
6 0.0000000 0.9277778 0.0000000 0.2936508 0.7291667 0.000000
7 0.4166667 6.3500000 1.0925463 0.5476190 0.1885169 0.000000
8 1.6250000 0.0000000 0.0000000 0.0000000 5.2187500 0.000000
9 0.0000000 0.8111111 0.0000000 0.0000000 0.0000000 0.000000
10 2.6770833 0.6666667 2.3304890 4.5906085 2.9652778 0.000000
15 1.8020833 0.9666667 1.4807137 3.3878968 0.1666667 0.000000
16 17.8750000 4.9555556 1.4615385 6.5000000 7.8593750 7.666667
19 4.5312500 1.0555556 3.5766941 6.7248677 2.3196181 0.000000
20 0.0000000 0.6777778 0.5384615 0.0000000 0.0000000 0.000000
21 0.0000000 0.9777778 0.0000000 0.2500000 0.0000000 0.000000
24 1.2500000 3.0583333 0.1923077 0.0000000 4.9583333 0.000000
25 0.0000000 0.0000000 2.5699634 0.0000000 0.0000000 0.000000
26 6.6666667 2.2333333 24.8730020 55.9980159 17.6239583 0.000000
其中P1-P6是我的採樣站,以及最左邊的列數字是我不同的物種。我將這個示例矩陣表示爲「平臺」。
之後,我用下面的代碼行:
dist <- function(x, ...){
vegdist(x, ...)
}
result<-pvclust(platforms,method.dist = "bray",method.hclust = "ward")
值得注意的是,我跑了三個第一代碼行,因爲叫聲 - 柯蒂斯指數是不是原來在pvclust封裝。因此,運行這些代碼行允許我指定pvclust函數中的bray-curtis索引
有誰知道它爲什麼不能與pvclust包配合使用?
任何幫助將不勝感激。
親切的問候,
瑪麗
請提供一個可重複的例子,用代碼和樣本數據。現在,很難診斷 - 當使用'stats :: hclust'時,需要鍵入'ward.D'或'ward.D2',其中'pvclust :: pvclust'需要'病房',這很簡單。 –
嗨邁克爾, 我已經更新了我的文章,以提供我的問題的實際例子。 –
請注意,Ward的方法基於*平方歐幾里得*。所以,雖然你可能會得到其他距離的結果,但它可能不再受到沃德原始理論的支持。 –