title: Map a pandas DataFrame index
body: <p>Suppose I have a dataframe indexed by <code>datetime</code>:</p>
  
  <pre><code>&gt; df.head()
  
                          value
  2013-01-01 00:00:00 -0.014844
  2013-01-01 01:00:00  0.243548
  2013-01-01 02:00:00  0.463755
  2013-01-01 03:00:00  0.695867
  2013-01-01 04:00:00  0.845290
  (...)
  </code></pre>
  
  <p>if I wanted to plot all values by date, I could do:</p>
  
  <pre><code>times = map(lambda x : x.date(), df.index)
  values = df.value
  plot(values, times)
  </code></pre>
  
  <p>Is there a more "pandas idiomatic" way to do it? I tried the <code>.rename</code> method, but I got a assertion error:</p>
  
  <pre><code>df.rename(lambda x : x.time())
  </code></pre>
  
  <p>What I really wanted was to do something like a boxplot:</p>
  
  <pre><code>df.boxplot(by = lambda x : x.time())
  </code></pre>
  
  <p>but without the standard deviation boxes (which will be substituted by estimated confidence bands). Is there a way to do this with a simple pandas command?</p>
  
  <hr>
  
  <p>I don't know if I was clear about what was the problem. The problem is that I have a datetime field as index of the dataframe, and I need to extract only the time part and plot the values by time. This will give me lots of points with the same x-axis, which is fine, but the <code>rename</code> method seems to expect that each value in the resulting index is unique.</p>