title: Why don't impute function in R is not able to impute all NA values
body: <p>In my data set  I have around 40% missing values. So I used <code>impute()</code> from the <code>e1071</code> package. I used following code to impute missing values of integer variables by their median, and missing values for character variables by their mode.</p>
  
  <pre><code>library(mlr)
  imp1 &lt;- impute(obj = as.data.frame(train_prop), target=character(0), 
                 classes = list(integer=imputeMedian(), factor=imputeMode())) 
  </code></pre>
  
  <p>After executing the code I used following code to check missing value</p>
  
  <pre><code>table(is.na(imp1$data))
  # FALSE    TRUE     
  # 5493033   13742
  </code></pre>
  
  <p>Which is showing around 0.25% missing value</p>
  
  <p>Before running the impute function I did same check and found the following result</p>
  
  <pre><code># FALSE    TRUE 
  # 3267515 2239260 
  </code></pre>
  
  <p>Initially my data had 40% missing values, but after running <code>impute()</code> I'm getting 0.2% missing values.</p>
  
  <p>Why don't I have 0% missing values? </p>