title: Pandas Fillna of Multiple Columns with Mode of Each Column
body: <p>Working with census data, I want to replace NaNs in two columns ("workclass" and "native-country") with the respective modes of those two columns. I can get the modes easily:</p>
  
  <pre><code>mode = df.filter(["workclass", "native-country"]).mode()
  </code></pre>
  
  <p>which returns a dataframe:</p>
  
  <pre><code>  workclass native-country
  0   Private  United-States
  </code></pre>
  
  <p>However, </p>
  
  <pre><code>df.filter(["workclass", "native-country"]).fillna(mode)
  </code></pre>
  
  <p>does <strong>not</strong> replace the NaNs in each column with anything, let alone the mode corresponding to that column. Is there a smooth way to do this?</p>