title: Subtract months from a given date in Matlab
body: <p>I need to subtract 21 months from a given date.</p>
  
  <p>My solution as given below only takes me to the first month of the given year :(  </p>
  
  <pre><code>[a,b,c]= datevec(date);
  b= b-21;
  datestr(datenum(a,b,c)) %--&gt; 11-Jan-2011 (WRONG).
  </code></pre>
  
  <p>I want the answer to be 11-June-2009.</p>