title: Pandas shift values in a column over intervening rows
body: <p>I have a pandas data frame as shown below.  One column has values with intervening NaN cells.  The values are to be shifted ahead by one so that they replace the next value that follows with the last being lost.  The intervening NaN cells have to remain.  I tried using .shift() but since I never know how many intervening NaN rows it means a calculation for each shift.  Is there a better approach?</p>
  
  <p><a href="https://i.stack.imgur.com/giWxe.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/giWxe.jpg" alt="enter image description here"></a></p>