Assuming you want the row number to be the row index in the output sparse matrix, the only tricky step is using SFrame.stack - from there you should be able to construct a csr_matrix directly.
import sframe as sf
from scipy.sparse import csr_matrix
x = sf.SFrame({'users': [{'123': 1.0, '122': 5},
{'134': 3.0, '123': 10}]})
x = x.add_row_number('row_id')
x = x.stack('users')
A = csr_matrix((x['X3'], (x['row_id'], x['X2'])),
shape=(2, 135))
I'm also hard-coding the dimension of the matrix here, but that's probably something you'd want to figure out programmtically.
Assuming you want the row number to be the row index in the output sparse matrix, the only tricky step is using
SFrame.stack
- from there you should be able to construct acsr_matrix
directly.I'm also hard-coding the dimension of the matrix here, but that's probably something you'd want to figure out programmtically.