如何在 Julia 中删除矩阵中的列?

Kri*_*ish 1 numpy matrix julia

M如果我有一个这样的矩阵M = [0 1 2; 3 4 5; 6 7 8],我如何删除指定的列。例如,删除后第二列M将为[0 2; 3 5; 6 8].

在 中numpy,存在一个numpy.delete函数可以执行我所要求的操作(沿特定轴删除),但我不确定 Julia 的等效项是什么。

Abo*_*mar 6

您可以直接使用数组索引来完成,

\n
julia> M = [0 1 2; 3 4 5; 6 7 8];\n\njulia> M[:, 1:3 .\xe2\x89\xa0 2]\n3\xc3\x972 Matrix{Int64}:\n 0  2\n 3  5\n 6  8\n
Run Code Online (Sandbox Code Playgroud)\n

请注意,从键盘上\xe2\x89\xa0写为\\neq+ Tab

\n

或者使用像InvertedIndices.jl这样的包:

\n
julia> using InvertedIndices\n\njulia> M[:, Not(2)]\n3\xc3\x972 Matrix{Int64}:\n 0  2\n 3  5\n 6  8\n
Run Code Online (Sandbox Code Playgroud)\n