title: How do I replace all string values with NaN (Dynamically)?
body: <p>I want to find all the strings in my dataframe and I want to replace them with NaN values so that I can drop all associated NaN values with the function df.dropna(). For example, if I have the following data set:</p>
  
  <pre><code>x = np.array([1,2,np.NaN,4,5,6,7,8,9,10])
  z = np.array([1,2,np.NaN,4,5,np.NaN,7,8,9,"My Name is Jeff"])
  y = np.array(["Hello World",2,3,4,5,6,7,8,9,10])
  </code></pre>
  
  <p>I should first be able to dynamically replace all strings with np.nan so my output should be: </p>
  
  <pre><code>x = np.array([1,2,np.NaN,4,5,6,7,8,9,10])
  z = np.array([1,2,np.NaN,4,5,np.NaN,7,8,9,np.NaN])
  y = np.array([np.NaN,2,3,4,5,6,7,8,9,10])
  </code></pre>
  
  <p>and then running df.dropna() (Assume that x,y,z reside in a data frame and not just separate variables) should allow me to have:</p>
  
  <pre><code>x = np.array([2,4,5,7,8,9])
  z = np.array([2,4,5,7,8,9])
  y = np.array([2,4,5,7,8,9])
  </code></pre>