title: create a scipy.sparse.csr_matrix from a delimited string
body: <p>I am processing a large amount of binary data, which is coming into my program row by row as strings that look like <code>\t\t1\t\t1\t\t\t</code> (but much longer). As you can imagine, these are rows from a tab delimited file. </p>
  
  <p>Obviously, I can do <code>'\t\t1\t\t1\t\t\t'.split('\t')</code> and get a list of <code>1</code>'s and <code>''</code>'s which I can easily enough turn into 1's and 0's or T/F or whatever. However, the data is quite sparse (a lot of 0's and not many 1's) so I am hoping to use some kind of sparse representation.</p>
  
  <p>My question is: does anyone know of a way to go directly from this string to something like a <code>scipy.sparse.csr_matrix()</code> <em>without</em> having to create an intermediate dense matrix first? </p>
  
  <p>I tried passing the split string (i.e. the list of <code>1</code>'s and <code>''</code>'s) directly to <code>csr_matrix()</code> and I got <code>TypeError: no supported conversion for types: (dtype('&lt;U1'),)</code></p>
  
  <p>As I said, I could do the above and get 1's and 0's and then convert <em>that</em> to a <code>csr_matrix()</code> but then I'm losing all the speed and memory advantages of the sparse because I'm creating the fully dense version anyway.</p>