Julia 范围之间的条件子集数组

Julia 范围之间的条件子集数组,julia,Julia,我希望在特定范围内过滤数据 dummy = [1,2,3,4,5,6,7,8,9,10] 这适用于单一条件: dummy[dummy .> 4] 如果我尝试设置一个范围: dummy[dummy .> 4 & dummy .< 7] dummy[dummy.>4和dummy.4.&(dummy.

我希望在特定范围内过滤数据

dummy = [1,2,3,4,5,6,7,8,9,10]
这适用于单一条件:

dummy[dummy .> 4]
如果我尝试设置一个范围:

dummy[dummy .> 4 & dummy .< 7]
dummy[dummy.>4和dummy.<7]
此逻辑不提供大于4和小于7的预期输出过滤

这就成功了

dummy[(dummy .> 4) .& (dummy .< 7)]
dummy[(dummy.>4.&(dummy.<7)]

通过布尔数组进行索引,无论是
dummy[(4.
还是
dummy[4.
都应该有效;由于运算符优先级,第一个代码段中的括号是必需的。为了更清晰地显示较大的过滤器,可以使用
@宏对布尔数组的生成进行矢量化。
宏:

dummy[@. 4 < dummy < 7]

过滤器函数代替
过滤器

通过布尔数组进行索引,
dummy[(4.
dummy[4.
应该可以工作;由于运算符优先级,第一个代码段中的括号是必需的。为了更清晰地显示较大的过滤器,可以使用
@宏对布尔数组的生成进行矢量化。
宏:

dummy[@. 4 < dummy < 7]

过滤器函数代替
过滤器。

您可以直接编写
dummy[4.
。您可以直接编写
dummy[4.