将数组值与 Julia 中的值进行比较

Compare array values with a value in Julia

我有一个数组 a = [1, 2, 3, 4];。我想将数组 a 的每个元素与一个数字进行比较,并且 return 一个新数组包含 True/False 个元素 在 Julia 中尽可能少的步骤 。我尝试 result = a < 2 并且期望的数组是 result = [True, False, False, False] 但它不起作用。希望你的帮助

您需要向量化(广播)比较运算符,以便它在 Vector 上运行。 您可以通过在代码中添加点 . 来实现。

julia> a = [1, 2, 3, 4]
4-element Vector{Int64}:
 1
 2
 3
 4

julia> a .<= 2
4-element BitVector:
 1
 1
 0
 0

阅读更多关于广播的信息here

请注意,Python 的 numpy 会自动为您执行此操作,但在某些情况下操作可能不明确 - 您希望它是元素明智的还是矩阵乘法?所以 Julia 通过使用 . 命令显式广播任何操作来解决这个问题。