title: Pandas DataFrame Calculate time difference between 2 columns on specific time range
body: <p>I want to calculate time difference between two columns on specific time range.</p>
  
  <p>I try <code>df.between_time</code> but it only works on index.</p>
  
  <p>Ex. Time range: between 18.00 - 8.00</p>
  
  <p>Data :</p>
  
  <pre><code>             start               stop
  0   2018-07-16 16:00:00  2018-07-16 20:00:00
  1   2018-07-11 08:03:00  2018-07-11 12:03:00
  2   2018-07-13 17:54:00  2018-07-13 21:54:00
  3   2018-07-14 13:09:00  2018-07-14 17:09:00
  4   2018-07-20 00:21:00  2018-07-20 04:21:00
  5   2018-07-20 17:00:00  2018-07-21 09:00:00
  </code></pre>
  
  <p>Expect Result :            </p>
  
  <pre><code>          start                  stop           time_diff
  0   2018-07-16 16:00:00  2018-07-16 20:00:00    02:00:00
  1   2018-07-11 08:03:00  2018-07-11 12:03:00    0
  2   2018-07-13 17:54:00  2018-07-13 21:54:00    03:54:00
  3   2018-07-14 13:09:00  2018-07-14 17:09:00    0
  4   2018-07-20 00:21:00  2018-07-20 04:21:00    04:00:00
  5   2018-07-20 17:00:00  2018-07-21 09:00:00    14:00:00
  </code></pre>
  
  <p><strong>Note:</strong> If time_diff > 1 days, I already deal with that case.</p>
  
  <p><strong>Question:</strong> Should I build a function to do this or there are pandas build-in function to do this? Any help or guide would be appreciated.</p>