给定一个矩阵,用最大值提取列的行名称是一个常见问题。从R中的矩阵中提取最大值(随机选择)
sapply(mat,2,which.max)
mat<-matrix(list(20,0,0,80,80,0,
20,0,40,0,40,20,
40,0,40,20,20,0,
0,80,40,20,20,20),ncol=6,byrow=T)
rownames(mat)<-c("A","C","G","T")
但在这里,一些列具有两个相似的最大值(在该示例矩阵,列3和4)。默认情况下,脚本选择“A”在第3列和第4列中具有最大列值的行。我在编写脚本时在随机选择两个行名称(A和T)中遇到麻烦,和4. 任何有关脚本的帮助表示赞赏。
+1我之前没有理由使用rank函数。可以派上用场,谢谢! –