热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何显示每行的最大值?

如何解决《如何显示每行的最大值?》经验,为你挑选了1个好方法。



1> akrun..:

我们可以pmax用来查找max每行的值

do.call(pmax, df)

并使用它来创建逻辑矩阵,并将那些不是max每行的值替换为NA

df[df != do.call(pmax, df)[row(df)]] <- NA

或另一种选择是apply使用MARGIN过的行指定为1到循环并使用相同的逻辑

df[] - t(apply(df, 1, FUN = function(x) replace(x, x!= max(x), NA)))
df
#        x        y        z
#1        NA       NA 0.000824
#2        NA       NA 0.533939
#3        NA 0.873416       NA
#4        NA       NA 0.990648
#5        NA 0.826873       NA
#6        NA 0.926590       NA
#7  0.826368       NA       NA
#8        NA       NA 0.884338
#9        NA       NA 0.501968
#10       NA 0.846041       NA


推荐阅读
author-avatar
悍受蓁
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有