title: Have to call variable twice before evaluated?
body: <p>Something really odd is going on here. In the code below, I create a variable called <code>temp</code>. I have to call it twice before I can see what it is. E.g. The first time I call it, the console shows nothing. The second time it shows the <code>data.table</code>/<code>data.frame</code> that it is. Can anyone help me understand what's going on here?  </p>
  
  <pre><code>library(magrittr)
  library(data.table)
  
  myDT &lt;- as.data.table(mtcars)
  
  
  temp &lt;- 
      myDT %&gt;%
      melt(id.vars = c('cyl', 'mpg', 'hp'), 
           measure.vars = c('vs','am','gear','carb'),
           variable.name = 'Data') %&gt;%
      extract( value &gt; 0) %&gt;%
      extract( , value := NULL)
  </code></pre>
  
  <p>What my console is doing (the first call doesn't do anything): </p>
  
  <pre><code>&gt; temp
  &gt; temp
      cyl  mpg  hp Data
   1:   4 22.8  93   vs
   2:   6 21.4 110   vs
   3:   6 18.1 105   vs
   4:   4 24.4  62   vs
   5:   4 22.8  95   vs
   ...
   ...
  </code></pre>