title: Pandas Dataframe using .loc for assignment gives unexpected results
body: <p>I am doing some calculations in pandas and the .loc method is having unexpected results.  not sure if it is me misusing the syntax or a bug.</p>
  
  <pre><code>df= pd.DataFrame(index=['series1', 'series2', 'series3'])
  df['prev value/unit'] =[99,99,99]
  df['value'] = [100,100,100]
  df['units'] = [100,100,0]
  df['value/unit'] = df['value']/df['units']
  </code></pre>
  
  <p>creates a dataframe where there will be some div  by zero values as shown below.   Business logic dictates that if there is a /0 the prior value/unit should be used.</p>
  
  <pre><code>          prev value/unit  value  units  value/unit
  series1               99    100    100    1.000000
  series2               99    100    100    1.000000
  series3               99    100      0         inf
  </code></pre>
  
  <p>so adding:</p>
  
  <pre><code>df.loc[df.units ==0,'value/unit'] = df['prev value/unit']
  </code></pre>
  
  <p>has the desired effect and the inf above gets correctly overwritten by 99 (the previous per unit value).</p>
  
  <p>However if there are no div/0.</p>
  
  <pre><code>df.loc[df.units ==0,'value/unit']
  #is a empty Series
  #Series([], name: value/unit, dtype: float64)
  </code></pre>
  
  <p>and asigning df['prev value/unit'] to it overwrites all the values!!!!</p>
  
  <p>so e.g.</p>
  
  <pre><code>df= pd.DataFrame(index=['series1', 'series2', 'series3'])
  df['prev value/unit'] =[99,99,99]
  df['value'] = [100,100,100]
  df['units'] = [100,100,100]
  df['value/unit'] = df['value']/df['units']
  df.loc[df.units ==0,'value/unit'] = df['prev value/unit']
  </code></pre>
  
  <p>gives:</p>
  
  <pre><code>          prev value/unit  value  units  value/unit
  series1               99    100    100          99
  series2               99    100    100          99
  series3               99    100    100          99
  </code></pre>
  
  <p>which is totally unexpected.   Did I accidentally misuse the .loc syntax or is this a bug?   I am specifically using the it to avoid assigning to temporary views of the dataframe.   for reference I am using pandas 0.13.1</p>