title: Convert pandas dataframe to numpy array - which approach to prefer?
body: <p>I need to convert a large dataframe to a numpy array.
  Preserving only numerical values and types.
  I know there are well documented ways to do so.</p>
  
  <p>So, which one is to prefer?</p>
  
  <pre><code>df.values
  df._as_matrix()
  pd.to_numeric(df)
  ... others ...
  </code></pre>
  
  <p>Decision factor:</p>
  
  <ul>
  <li><p>efficiency</p></li>
  <li><p>safely operating on nan,np.nans, and other possible unexpected values</p></li>
  <li><p>numerically stable</p></li>
  </ul>