From 9529246bfb20eaf8101fe7a9e7f671c04c0fc7be Mon Sep 17 00:00:00 2001 From: Pietro Vertechi Date: Mon, 21 Aug 2017 14:30:44 +0100 Subject: [PATCH] keywords arguments of same length as series get grouped --- src/args.jl | 2 +- src/series.jl | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/args.jl b/src/args.jl index 37dd250e..ef403a04 100644 --- a/src/args.jl +++ b/src/args.jl @@ -854,7 +854,7 @@ end # expecting a mapping of "group label" to "group indices" function extractGroupArgs{T, V<:AVec{Int}}(idxmap::Dict{T,V}, args...) groupLabels = sortedkeys(idxmap) - groupIds = VecI[collect(idxmap[k]) for k in groupLabels] + groupIds = Vector{Int}[collect(idxmap[k]) for k in groupLabels] GroupBy(groupLabels, groupIds) end diff --git a/src/series.jl b/src/series.jl index ca520168..746e206d 100644 --- a/src/series.jl +++ b/src/series.jl @@ -515,6 +515,13 @@ end @series begin label --> string(glab) idxfilter --> groupby.groupIds[i] + for (key,val) in d + length(args) == 0 && break + if key != :group && isa(val, AbstractArray) && size(val,1) == size(args[1],1) + n = ndims(val) + :($key) := val[groupby.groupIds[i], fill(Colon(), n-1)...] + end + end args end end