title: Random projection in Python Pandas using a dataframe containing NaN values
body: <p>I have a dataframe <code>data</code> containing real values and some NaN values. I'm trying to perform locality sensitive hashing using random projections to reduce the dimension to 25 components, specifically with the<code>sklearn.random_projection.GaussianRandomProjection</code> class. However, when I run: </p>
  
  <p><code>tx = random_projection.GaussianRandomProjection(n_components = 25)
  data25 = tx.fit_transform(data)</code></p>
  
  <p>I get <code>Input contains NaN, infinity or a value too large for dtype('float64')</code>. Is there a work-around to this? I tried changing all the NaN values to a value that is never present in my dataset, such as -1. How valid would my output be in this case? I'm not an expert behind the theory of locality sensitive hashing/random projections so any insight would be helpful as well. Thanks.</p>