我正在使用Bioinformatics Toolbox(版本3.7)中的
CLUSTERGRAM對象.
MATLAB版本R2011a.
我想得到clustergram的行和列的排列向量,就像我可以用dendrogram函數做的那樣:
x = magic(10);
>> [~,~,permrows] = dendrogram(linkage(x,'average','euc'))
permrows =
9 10 6 7 8 1 2 4 5 3
>> [~,~,permcols] = dendrogram(linkage(x','average','euc'))
permcols =
6 7 8 9 2 1 3 4 5 10
我發現群集和樹形圖中的聚類不一樣,很可能是由于最優的葉子排序計算(我不想禁用它).
例如,對于來自的clustergram:
clustergram(x)
(‘average’和’eucledian’是clustergram的預設方法)
向量(如附圖所示)應為:
permrows = [1 2 4 5 3 10 9 6 7 8];
permcols = [1 2 8 9 6 7 10 5 4 3];
那麼,如何以程式設計方式擷取這些向量?有人熟悉這個對象嗎?
有人能建議一個好的選擇嗎?我知道我可以建立一個結合imagesc和樹形圖函數的類似圖形,但是在樹形圖中葉子排序比在樹形圖中更好(最優).