Arrays 按值将数组拆分为数组数组
转换阵列的最佳方式是什么Arrays 按值将数组拆分为数组数组,arrays,multidimensional-array,julia,Arrays,Multidimensional Array,Julia,转换阵列的最佳方式是什么 ["a", "bc", "", "d", "efg", "", "ijkl"] 使用“将其拆分为 [["a","bc"],["d","efg"],["ijkl"]] 在朱莉娅身上。这取决于你所说的“最好”是什么意思。以下是一种方法
["a", "bc", "", "d", "efg", "", "ijkl"]
使用“
将其拆分为
[["a","bc"],["d","efg"],["ijkl"]]
在朱莉娅身上。这取决于你所说的“最好”是什么意思。以下是一种方法:
julia> x = ["a", "bc", "", "d", "efg", "", "ijkl"]
7-element Array{String,1}:
"a"
"bc"
""
"d"
"efg"
""
"ijkl"
julia> loc = findall(isempty, x)
2-element Array{Int64,1}:
3
6
julia> getindex.(Ref(x), UnitRange.([1; loc .+ 1], [loc .- 1; length(x)]))
3-element Array{Array{String,1},1}:
["a", "bc"]
["d", "efg"]
["ijkl"]
还有一个:
julia> function splitter(x)
out = Vector{Vector{eltype(x)}}()
cur = eltype(x)[]
for s in x
if isempty(s)
push!(out, cur)
cur = eltype(x)[]
else
push!(cur, s)
end
end
push!(out, cur)
return out
end
splitter (generic function with 1 method)
julia> splitter(x)
3-element Array{Array{String,1},1}:
["a", "bc"]
["d", "efg"]
["ijkl"]