我有一个矩阵数据。我怎样才能找到给定矩阵中的最大值。
> data
[,1]
[1,] "1714.12"
[2,] Character,2
> data[2,1]
[1] "14777.15" "1421.45"
> class(data)
[1] "matrix"
Run Code Online (Sandbox Code Playgroud)
我怎样才能找到上面矩阵中的最大值data,Whish是14777.15?
数据:
data <- structure(list("1714.12", c("14777.15", "1421.45")), .Dim = c(2L, 1L))
Run Code Online (Sandbox Code Playgroud)
data <- structure(list("1714.12", c("14777.15", "1421.45")), .Dim = c(2L, 1L))
Run Code Online (Sandbox Code Playgroud)
在“标准”R 矩阵中,c(data)将以原子向量形式返回整个矩阵。但如果我们看c(data)这里,我们会发现它实际上是一个列表。
c(data)
# [[1]]
# [1] "1714.12"
#
# [[2]]
# [1] "14777.15" "1421.45"
Run Code Online (Sandbox Code Playgroud)
max()之后就可以使用了unlist()。但您需要使用,as.numeric()因为那里有角色值。
max(as.numeric(unlist(data)))
# [1] 14777.15
Run Code Online (Sandbox Code Playgroud)
注意:回溯并找到将数字转化为字符的位置并进行相应调整可能是一个好主意,这样您就不会遇到其他问题。