title: Making vcov() accept "sigma" from an lm() object in R
body: <p><code>vcov()</code> in R gets an <code>lm()</code> object and returns the variance-covariance matrix ONLY for <code>Intercept</code> and <code>coefficients</code> (i.e., <em>a 2 x 2 matrix</em>).</p>
  
  <p>I'm wondering though, how could I make <code>vcov()</code> to also add <code>sigma</code> (i.e., <code>summary(lm.object)$sigma)</code> to its operation (i.e., producing <em>a 3 x 3 matrix</em>)?</p>
  
  <p>For example, if we have <code>m</code> as our <code>lm</code> object (<em>below</em>), how can we make <code>vcov()</code> compute variance-covariance matrix for <code>Intercept</code>, <code>coefficients</code> <strong><em>AND ALSO</em></strong> <code>sigma</code> from <code>m</code>?</p>
  
  <pre><code>q &lt;- data.frame(bob = 1:5 - 3, jen = c(1.7, 2.6, 2.5, 4.4, 3.8) - 3)
  m &lt;- lm(bob ~ jen, q)
  </code></pre>
  
  <p>Here is what I tried without success:</p>
  
  <pre><code>vcov(c(m, summary(m)$sigma))
  </code></pre>