title: pandas merge dataframes with multi-index
body: <p>I have a bunch of multi-index <code>pd.DataFrames</code> containing statistics for weather observations taken at a set of ground stations on certain days. Here's the structure of one such data frame:</p>
  <pre><code>&gt;&gt;&gt; df = pd.DataFrame({'month': [1, 1, 1, 1, 1, 1],
                     'day': [2]*6,
                     'station': ['A', 'B', 'C', 'D', 'E', 'F'],
                     'mean': [55, 40, 84, 31, 44, 12],
                     'sd': [1., 2., 1.2, 3., 4., 0.7]})
  &gt;&gt;&gt; df.set_index(['station', 'month', 'day'])
  &gt;&gt;&gt; df
  &gt;&gt;&gt; df = df.set_index(['station', 'month', 'day'])
  &gt;&gt;&gt; df
                     mean   sd
  station month day           
  A       1     2      55  1.0
  B       1     2      40  2.0
  C       1     2      84  1.2
  D       1     2      31  3.0
  E       1     2      44  4.0
  F       1     2      12  0.7
  </code></pre>
  <p><code>df</code> stores all the observations for day <code>2</code> of month <code>1</code> (say, Jan 2). The station index is unique for each dataframe (no two station IDs are the same). However, the set of stations may vary between individual dataframes, depending on the month and/or day.</p>
  <p><strong>Question</strong>: how do I combine these dataframes into a <em>single</em> dataframe with the following structure (ignore the exact <code>mean</code> and <code>sd</code> values, i've made those up):</p>
  <pre><code>&gt;&gt;&gt; df
                     mean   sd
  station month day           
  A       1     1      55  1.0
                2      44  5.0
                3      34  1.2
  (...)
          2     1      55  1.0
                2      44  5.0
                3      34  1.2
  (...)   
  B       1     1      31  3.0
                2      44  5.0
                3      34  1.2
  (...)
  </code></pre>