title: Split each row into multiple groups using Pandas groupby?
body: <p>So I have a DataFrame that looks like the following:</p>
  
  <pre><code>In [5]: import pandas as pd, numpy as np
  np.random.seed(seed=43525)
  descriptors = 'abcdefghi'
  df = pd.DataFrame([{'Value':np.random.randint(0,100), 
                         'Group':descriptors[np.random.randint(0, len(descriptors)): 
                                             np.random.randint(0, len(descriptors))]} for i in range(0,10)])
  print(df)
  
    Group  Value
  0            4
  1   abc     37
  2  efgh     99
  3     a     67
  4           37
  5           52
  6           46
  7     b     41
  8     d     17
  9           36
  </code></pre>
  
  <p>The each character in the descriptor list should become its own group (along with the null group). How could I perform a <code>groupby</code> to accomplish this? </p>
  
  <p>So group 'a' would contain indices 1 and 3, group 'b' would contain indices 1 and 7, etc. This is a fairly non-standard approach to using groupby (if it can be accomplish with it at all) so I'm not sure how to proceed. </p>