title: Subtract each row from first row in dataframe
body: <p>I have a dataframe (called df) with three variables, the head of which shown below. There are 600 rows of data. </p>
  
  <pre><code>         X1        X2        X3
  0  0.049150  0.270032  0.577858
  1  0.602387  0.065492  0.555747
  2  0.598355  0.235002  0.482744
  3  0.522151  0.253991  0.402630
  4  0.402601  0.206630  0.553987
  </code></pre>
  
  <p>I am trying to subtract each row from the first. That is, I'm looking for row1 - row2, then row1 - row3, and so on. I am new to using for loops (and Python in general), and my current attempts aren't getting very far: </p>
  
  <pre><code>for i in range(len(df)):
      diff[i] = df.iloc[0,:] - df.iloc[i,:]
      diff2 = math.sqrt((diff[0])**2 + (diff[1])**2 + (diff[2])**2)
      print(diff2)
  </code></pre>
  
  <p>for context on the final three lines, I am trying to take the square root of the differences between each row item. So, </p>
  
  <pre><code>sqrt((row1col1-row2col1)^2 + (row1col2 - row2col2)^2 + (row1col3 - row2col3)^2)
  </code></pre>
  
  <p>and then I want to store the results of this for all the row differences up to row 600 in a new vector.</p>
  
  <p>If you would like further context, I am trying to implement the second step of a "Subtractive Clustering" algorithm, the formula for which is as follows: </p>
  
  <p><img src="https://image.ibb.co/jAGVVw/sc.jpg" alt="formula"></p>
  
  <p>where ra=1</p>