title: dot routine for scipy.sparse matrices produces error
body: <p>I have a <a href="http://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.csr_matrix.html" rel="noreferrer">CSR matrix</a>:</p>
  
  <pre><code>&gt;&gt; print type(tfidf)
  &lt;class 'scipy.sparse.csr.csr_matrix'&gt;
  </code></pre>
  
  <p>I want to take dot product of two rows of this <a href="http://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.csr_matrix.html" rel="noreferrer">CSR matrix</a>:</p>
  
  <pre><code>&gt;&gt; v1 = tfidf.getrow(1)
  &gt;&gt; v2 = tfidf.getrow(2)
  &gt;&gt; print type(v1)
  &lt;class 'scipy.sparse.csr.csr_matrix'&gt;
  </code></pre>
  
  <p>Both <code>v1</code> and <code>v2</code> are also CSR matrices. So I use <code>dot</code> subroutine:</p>
  
  <pre><code>&gt;&gt; print v1.dot(v2)
  
  Traceback (most recent call last):
    File "cosine.py", line 10, in &lt;module&gt;
      print v1.dot(v2)
    File "/usr/lib/python2.7/dist-packages/scipy/sparse/base.py", line 211, in dot
      return self * other
    File "/usr/lib/python2.7/dist-packages/scipy/sparse/base.py", line 246, in __mul__
      raise ValueError('dimension mismatch')
  ValueError: dimension mismatch
  </code></pre>
  
  <p>They are the rows of the same matrix, so their dimentions ought to match:</p>
  
  <pre><code>&gt;&gt; print v1.shape
  (1, 4507)
  &gt;&gt; print v2.shape
  (1, 4507)
  </code></pre>
  
  <p>Why does <code>dot</code> subroutine not work?</p>
  
  <p>Thanks.</p>