为了实现这一目标,我需要执行一个聚类过程,然后将元数据关联到一个新的df,以便对热图进行注解。
我有这样几行代码:
hclust_col <- cutree(tree = as.dendrogram(hclust_cyto), k = 2)
字符串
其中,输出为:
op1 2020 G4 op104 2020 G4 op105 2020 G4 op106 2020 G4 op18 2020 G4 op2 2020 G4
1 1 2 1 1 2
型
然后,我可以创建一个df,它允许我关联每个集群的信息:
my_gene_col <- data.frame(cluster = ifelse(test = my_gene_col == 1,
yes = "cluster 1", no = "cluster 2"))
型
其中,输出为:
op1 2020 G4 cluster 1
op104 2020 G4 cluster 1
op105 2020 G4 cluster 1
型
现在,我尝试执行k = 4 or more
,一切都很好,但是,当我尝试使用每个集群的信息创建新的df时,我需要更改代码以自动将集群分配给每行。为了实现这一点:
hclust_col_1 <- data.frame(cluster = paste("cluster", hclust_col))
型
这是我的问题,因为这种方法删除了我原来的row.names
:
在这一步中,我失去了我原来的行名称。我的问题是:
- 我做错了什么?
- 我怎么能保留这一行。名字?
1条答案
按热度按时间cbwuti441#
paste
函数从vector中剥离属性。您需要在data.frame
函数中使用row.names
参数来传入行名称:字符串