gpt4 book ai didi

r - 如何在R中的列表中找到最大值的位置?

转载 作者:行者123 更新时间:2023-12-04 13:05:13 25 4
gpt4 key购买 nike

这看起来应该很简单,但我想不通,也没有在网上找到解决方案。

我有一个 list

test<-list(a = list(c(4543, 25234, 56346, 676), c(545, 34647, 567567, 
4564), c(785, 343, 95, 435)), b = list(c(90823, 2341, 989, 5645
), c(210938, 342345, 345, 78678), c(2094234, 2343, 23466, 45654
)))

如何找到列表中最大值的位置?

答案是 test[["b"]][[3]][1]test[[2]][[3]][1]

最佳答案

这有点乱,但它会给你最大值(value)的位置

library(stringr)
library(dplyr)

x <- which.max(unlist(test))
y <- str_split(names(x), "", simplify = T)
a <- y[1]


z <- sapply(test[[a]], length) %>% cumsum
b <- which(z > as.numeric(y[2]))
c <- as.numeric(y[2]) - z[b-1]

test[[a]][[b]][[c]]

[1] 2094234

在此代码中,abc 表示位置。如果您需要更通用的版本,请告诉我

关于r - 如何在R中的列表中找到最大值的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69849382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com