diff --git a/src/Datasets.jl b/src/Datasets.jl index 8be6bfb55386486995e48cc991b46598b0cd8e00..086e99e6f9933186d9c42644abf7939196e4ddc1 100644 --- a/src/Datasets.jl +++ b/src/Datasets.jl @@ -725,7 +725,13 @@ function getlabels(dataset; labels=nothing, attrname=(:labels, :names), store::B end encodelabels(label::T, labelset::Vector{T}) where {T} = findfirst(==(label), labelset) -encodelabels(labels::Vector{T}, labelset::Vector{T}) where {T} = [encodelabels(label, labelset) for label in labels] +function encodelabels(labels::Vector{T}, labelset::Vector{T}) where {T} + if isempty(labels) + Int[] + else + [encodelabels(label, labelset) for label in labels] + end +end function encodelabels(labelseries::Vector, labelset::Vector) encodedlabels = Union{Int, Vector{Int}}[]