Non-Disjoint GroupBy
I think I once read something similar here or on the mailing list but I did not find it with these keywords.

Let's say I want to have aggregates over a groups that fulfill  any of a given set of conditions (e.g., a stock whose volatility is higher than x or the return lower than y  and I am interested in how many stocks I hold with vol > x and how many with return< y ).
so my df is something like

stock  vol return #of stocks

A       40  -10      10
B   20      10        1000

etc.
and I want the result 

condition     # of stocks
vol > x            n
return < y        m

where we have of course that m + n may be greater than  df[#of stocks].sum().

Now, my stocks are grouped into different portfolios so I may have a portfolio column and this functionality should allow to combine this kind of group by with a "normal " group by.  So 

portfolio  condition  # of stocks
P             vol > x        m
P             return < y    n
Q            vol >x          o
Q            return < y     p

Is this something that has been thought about?
