У меня есть такая матрица:
> dput(df2)
structure(c(2, 2, 1, 2, 4, 0.5, 0.3, 6, 4, 3, 2, 1, 2, 0.7, 0.5,
4, 6, 4, 4, 3, 1, 0.9, 0.7, 2, 3, 5, 6, 2, 0.5, 1, 0.9, 1), .Dim = c(8L,
4L), .Dimnames = list(c("gene1", "gene2", "gene3", "gene4", "gene5",
"gene6", "gene7", "gene8"), c("t0h", "t1h", "t2h", "t4h")))
Я использую тепловую карту для измерения изменения уровня экспрессии генов во время лечения: t0h, t1h, t2h, t4h. Следуя руководствам ComplexHeatmap (также пробовал другие версии тепловой карты), я получаю тепловую карту:
library(ComplexHeatmap)
Heatmap(df2, column_order = colnames(df2), column_title = " Time after treatment")
введите описание изображения здесь Но из выходных данных я вижу, что кластеризация выполняется на основе абсолютного значения генов. Я хочу сгруппировать гены по их тенденциям после лечения, например: полностью уменьшаться, полностью увеличиваться после лечения и т. Д. c. В этой тепловой карте я хочу, чтобы ген 2/3/6/7 был сгруппирован вместе, а ген 5 и ген 8 вместе. Я прочитал некоторые методы кластеризации в руководстве, похоже, все эти методы связаны с какой-то статистической / вычислительной моделью, которую трудно применить в моем случае. Интересно, есть ли способ сделать это так, как я хотел бы построить?
Спасибо,