title: How to unstack a dataframe without creating nan?
body: <p>I'm starting with a dataframe as below (df2):</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th>-</th>
  <th style="text-align: left;">Day</th>
  <th style="text-align: left;">Sorbent</th>
  <th style="text-align: right;">Gabapentin 1</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td>0</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: left;">AX</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>1</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: left;">AX</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>2</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: left;">AX</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>3</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: left;">ABN</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>4</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: left;">ABN</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>..</td>
  <td style="text-align: left;">...</td>
  <td style="text-align: left;">...</td>
  <td style="text-align: right;">...</td>
  </tr>
  <tr>
  <td>84</td>
  <td style="text-align: left;">30</td>
  <td style="text-align: left;">Dex</td>
  <td style="text-align: right;">4.4</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>I want to end up with a data frame as below:</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th></th>
  <th style="text-align: left;">Day</th>
  <th style="text-align: right;">ABN</th>
  <th style="text-align: right;">AX</th>
  <th style="text-align: right;">Dex</th>
  <th style="text-align: right;">ENV</th>
  <th style="text-align: right;">WCX</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td>0</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>1</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>2</td>
  <td style="text-align: left;">1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td>3</td>
  <td style="text-align: left;">4</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.3</td>
  <td style="text-align: right;">0.1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.1</td>
  </tr>
  <tr>
  <td>4</td>
  <td style="text-align: left;">4</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">0.3</td>
  <td style="text-align: right;">0.1</td>
  <td style="text-align: right;">0.1</td>
  <td style="text-align: right;">0.2</td>
  </tr>
  <tr>
  <td>...</td>
  <td style="text-align: left;">...</td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">..</td>
  <td style="text-align: right;"></td>
  </tr>
  <tr>
  <td>30</td>
  <td style="text-align: left;">30</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">3.3</td>
  <td style="text-align: right;">4.4</td>
  <td style="text-align: right;">8.5</td>
  <td style="text-align: right;">10.1</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>So I have tried a variety of input and the closest I can get is:</p>
  <pre><code>df3 = df2.set_index(['Day', 'Sorbent'], append = True)
  print(df3.unstack(level = -1))
  </code></pre>
  <p>Which gives:</p>
  <pre><code>    Gabapentin 1                   
  </code></pre>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th style="text-align: left;">Sorbent</th>
  <th style="text-align: right;">ABN</th>
  <th style="text-align: right;">AX</th>
  <th style="text-align: right;">Dex</th>
  <th style="text-align: right;">ENV</th>
  <th style="text-align: right;">WCX</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td style="text-align: left;"></td>
  <td style="text-align: right;">Day</td>
  <td style="text-align: right;"></td>
  <td style="text-align: right;"></td>
  <td style="text-align: right;"></td>
  <td style="text-align: right;"></td>
  </tr>
  <tr>
  <td style="text-align: left;">0</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">1</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">2</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">3</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">4</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">...</td>
  <td style="text-align: right;"></td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">...</td>
  <td style="text-align: right;">...</td>
  </tr>
  <tr>
  <td style="text-align: left;">84</td>
  <td style="text-align: right;">30</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">85</td>
  <td style="text-align: right;">30</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  <td style="text-align: right;">NaN</td>
  </tr>
  <tr>
  <td style="text-align: left;">86</td>
  <td style="text-align: right;">30</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td style="text-align: left;">87</td>
  <td style="text-align: right;">30</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  <tr>
  <td style="text-align: left;">88</td>
  <td style="text-align: right;">30</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">NaN</td>
  <td style="text-align: right;">0.0</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>I've tried pivots etc. but I don't want the data averaged out.</p>
  <p>If anyone has any ideas I'm sure I'm just missing something really silly but I would appreciate any help.</p>