當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia findmax用法及代碼示例


用法一

findmax(f, domain) -> (f(x), index)

返回 codomain 中的一對值(f 的輸出)和 domain 中相應值的索引(f 的輸入),使得 f(x) 最大化。如果有多個最大點,則將返回第一個。

domain 必須是非空的可迭代對象。

將值與 isless 進行比較。

Julia 1.7

此方法需要 Julia 1.7 或更高版本。

例子

julia> findmax(identity, 5:9)
(9, 5)

julia> findmax(-, 1:10)
(-1, 1)

julia> findmax(first, [(1, :a), (3, :b), (3, :c)])
(3, 2)

julia> findmax(cos, 0:π/2:2π)
(1.0, 1)

用法二

findmax(itr) -> (x, index)

返回集合 itr 的最大元素及其索引或鍵。如果有多個最大元素,則返回第一個。將值與 isless 進行比較。

另請參閱: findmin argmax maximum

例子

julia> findmax([8, 0.1, -9, pi])
(8.0, 1)

julia> findmax([1, 7, 7, 6])
(7, 2)

julia> findmax([1, 7, 7, NaN])
(NaN, 4)

用法三

findmax(A; dims) -> (maxval, index)

對於數組輸入,返回給定維度上最大值的值和索引。 NaN 被視為大於除 missing 之外的所有其他值。

例子

julia> A = [1.0 2; 3 4]
2×2 Matrix{Float64}:
 1.0  2.0
 3.0  4.0

julia> findmax(A, dims=1)
([3.0 4.0], CartesianIndex{2}[CartesianIndex(2, 1) CartesianIndex(2, 2)])

julia> findmax(A, dims=2)
([2.0; 4.0;;], CartesianIndex{2}[CartesianIndex(1, 2); CartesianIndex(2, 2);;])

相關用法


注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Base.findmax — Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。