r - 按列中非零元素的数量对 data.frame 进行排序

标签 r

df <- as.data.frame(matrix(sample(0:2, 10 * 10, replace = TRUE), 10, 10)) 

我想对 df 进行排序,使非零元素数量最多的列出现在 df[,1] 中。

奖金: 在具有相等非零元素的列组中,按 colsum 排序会很好 (df[,order(colSums(df),decreasing=T)])。

最佳答案

代码只需更改为创建逻辑矩阵 (df != 0),然后执行 colSums

df[,order(colSums(df!= 0),decreasing=TRUE)]

关于r - 按列中非零元素的数量对 data.frame 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57512231/

相关文章:

r - 如何调用 dplyr 中的第 n 个下一个值?

r - 当数据为空时从 ggvis 返回的正确方法?

r - 在另一个文档中包含一个 Markdown 文档中的特定 block

r - 比较 Julia 中两个向量的元素是否相等

r - 在 R 中绘制年度计划

r - 将我的 excel 文件中的日期与系统日期进行比较

r - 在 R 中使用 Rcurl 中的 SCP 函数

r - Shiny 的 R markdown 中的多个 css 样式

欧元符号 (€) 的正则表达式

r - NA 作为 aes_string 中的输入