如何在Julia中限制数组的列
我有一个4:3的矩阵,我只想取2:3 是否可以使用DelimitedFiles命令进行定界? 我应该如何使用它如何在Julia中限制数组的列,julia,Julia,我有一个4:3的矩阵,我只想取2:3 是否可以使用DelimitedFiles命令进行定界? 我应该如何使用它 Q = convert(Matrix, ACT[2:3])#I would like to omit the 2:3 假设您有以下矩阵: julia> a = collect(reshape(1:12,(4,3))) 4×3 Array{Int64,2}: 1 5 9 2 6 10 3 7 11 4 8 12 可以通过两种方式选择子阵列-创建所需零件
Q = convert(Matrix, ACT[2:3])#I would like to omit the 2:3
假设您有以下
矩阵
:
julia> a = collect(reshape(1:12,(4,3)))
4×3 Array{Int64,2}:
1 5 9
2 6 10
3 7 11
4 8 12
可以通过两种方式选择子阵列-创建所需零件的副本或创建视图
复制(创建一个新对象,并复制阵列的数据:
julia> a[1:2,:]
2×3 Array{Int64,2}:
1 5 9
2 6 10
创建视图
。在许多情况下,这要快得多,因为数据没有被复制:
julia> view(a, 1:2, :)
2×3 view(::Array{Int64,2}, 1:2, :) with eltype Int64:
1 5 9
2 6 10
为了创建视图,您还可以使用宏-在这种情况下,您的代码将更类似于复制数据的代码:
julia> @view a[1:2,:]
2×3 view(::Array{Int64,2}, 1:2, :) with eltype Int64:
1 5 9
2 6 10
每个视图都可以使用命令display
显示,这是处理显示它们的标准方法。
但是,如果要使用DelmitedFile
,您可以,例如:
julia> using DelimitedFiles;writedlm(stdout, @view a[1:2,:])
1 5 9
2 6 10