从阵列
[3,1,7,2;
4,3,2,7;
3,4,1,2]
Run Code Online (Sandbox Code Playgroud)
我想提取对应于具有等于2的最后一个主进行的行的子数组.
我是一个试图开始使用Julia的Matlab用户.我在文档中查找了一些提示但未能找到合适的答案.
非常感谢你提前,
斯特凡
这对你有用吗?
julia> x = [3 1 7 2
4 3 2 7
3 4 1 2]
3x4 Array{Int64,2}:
3 1 7 2
4 3 2 7
3 4 1 2
julia> x[x[:, end] .== 2, :]
2x4 Array{Int64,2}:
3 1 7 2
3 4 1 2
Run Code Online (Sandbox Code Playgroud)
让我们分解吧.
x[:, end] 是最后一栏.
x[:, end] .== 2给出是Vector{Bool}(1d true和的数组false),true如果该行以2结尾,false则返回.
然后把它们放在一起我们有x[x[:, end] .== 2, :],它采用这个向量true并false指定哪些行和,:说明采用每个行中的所有列.