r - 通过命令从列表中找出最大数目

标签 r list max

我有一个这样的 list :

Ll 
$a
3.4 5.6 -2.1 -7.8
$b
2.1 6.7
$c
-6.7,0.001,8.9

我想找出列表中所有元素的最大数量,而不考虑符号。
即我希望我的输出看起来像这样:
Ll
$a
-7.8
$b
6.7
$c
8.9

有没有办法通过单个命令行来做到这一点?
可以使用“by”命令来完成吗?

最佳答案

可复制的代码/数据总是有帮助的:

L1 <- list(a = c(3.4, 5.6, -2.1, -7.8), b = c(2.1, 6.7), c = c(-6.7, 0.001, 8.9))

使用lapply将您自己的函数应用于每个元素,which.max可以轻松找到最大值,我们只需要获取每个元素内的abs olute值:
lapply(L1, function(x) x[which.max(abs(x))])
$a
[1] -7.8

$b
[1] 6.7

$c
[1] 8.9

关于r - 通过命令从列表中找出最大数目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11498155/

相关文章:

python - 为什么当我循环它时方阵会改变?

ruby-on-rails - 如何找到在数组中恰好出现两次的对象属性的最大值?

sql - 选择不同的(col a) max(colb)

r - 使用base r函数如何检查向量中是否存在元素

pdf - 在R中将点图保存为pdf

java - 添加到queueList时出现IndexOutOfBoundException

r - 矩阵列表乘以标量,Rcpp 中不保留维度属性

r - 一部分是贪婪的正则表达式,另一部分是非贪婪的

mysql - RMySQL 返回 utf8 文本的乱码

python - Pandas:如何获取最大值和最小值并为每一行写入?