gpt4 book ai didi

r - 获取在矩阵的行中保存最大值的列名,在数组中保存单独的最大值

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

例如给出:

dim1 <- c("P","PO","C","T")
dim2 <- c("LL","RR","R","Y")
dim3 <- c("Jerry1", "Jerry2", "Jerry3")
Q <- array(1:48, c(4, 4, 3), dimnames = list(dim1, dim2, dim3))
我想在这个数组中引用在(第 3 行,第 4 列)位置具有最大 dim3 值的矩阵。
识别该矩阵后,我想返回在矩阵(第 3 行,第 1 列)到(第 3 行,第 3 列)范围内具有最大值的列名。
所以我希望发生的是 Jerry3 被引用,因为数字 47 存储在它的第 3 行第 4 列,然后在 Jerry3 中,我希望第 3 行中的最大数字被引用,这将是 43,并且最终,我需要返回的(我需要的唯一值)是列名,即“R”。
这就是我需要知道如何做的,获取“R”并将其分配给一个变量,即“column_ref”,这样 column_ref <-“R”。

最佳答案

这应该可以 - 如果我理解正确:

Q <- array(1:48, c(4,4,3), dimnames=list(
c("P","PO","C","T"), c("LL","RR","R","Y"), c("Jerry1", "Jerry2", "Jerry3")))

column_ref <- names(which.max(Q[3,1:3, which.max(Q[3,4,])]))[1] # "R"

一些解释:
which.max(Q[3,4,]) # return the index of the "Jerry3" slice (3)
which.max(Q[3,1:3, 3]) # returns the index of the "R" column (3)

...然后 names返回索引的名称(“R”)。

关于r - 获取在矩阵的行中保存最大值的列名,在数组中保存单独的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10290801/

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